home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 5 / Amiga Tools 5.iso / tools / developer-tools / assembler-tools / pllbc2p / source / pllb_c2plibrary.s next >
Text File  |  1980-01-10  |  171KB  |  12,060 lines

  1.  
  2. ;    -    -    -    -    -    -    -    -    -
  3.  
  4. ;               >> PLLB-C2P V1.04 <<
  5.  
  6. ;              Written By Kevin Picone
  7.  
  8. ;            (c) Copyright 1996 Kevin Picone of Underware Design.
  9.  
  10. ;                          All Rights Reserved
  11.  
  12. ;    -    -    -    -    -    -    -    -    -
  13.  
  14. ;      PLEASE NOTE: The code hits the HARDWARE while using the Blitter
  15.  
  16. ;    -    -    -    -    -    -    -    -    -
  17.  
  18. ;          This Source Cotains the Following MAIN Routines
  19.  
  20.  
  21. ;        * Pllb_Alloc_fast_buffers
  22.  
  23. ;        * Pllb_DeAlloc_fast_buffers
  24.  
  25. ;        * Pllb_C2p_Wait_blt
  26.  
  27. ;        * Pllb_C2p_Process_Frame_Buffer
  28.  
  29. ;        * Pllb_c2p_Init_BlitterResort_Table
  30.  
  31. ;        * Pllb_C2p_blitter_resort_frame
  32.  
  33. ;        * Pllb_C2p_init_precalc_tables
  34.  
  35. ;        * Pllb_C2p_Routine_alignment_system
  36.  
  37.  
  38. ;    -    -    -    -    -    -    -    -    -
  39. ;    -    -    -    -    -    -    -    -    -
  40.  
  41.  
  42.  
  43. PllbVersion macro
  44.     dc.b "V1.04 (26-4-1996)"
  45.     endM
  46.  
  47.         rsreset
  48.  
  49. Pllb_C2P_Tag512k        rs.l 1
  50. Pllb_C2P_Tag1024k        rs.l 1
  51. Pllb_C2P_Tag1536k        rs.l 1
  52. Pllb_C2P_Tag2048k        rs.l 1
  53.  
  54.         rsreset
  55.  
  56. Pllb_c2p_ColourDepth4Bit    rs.l 1        ; set to 16 colours
  57. Pllb_c2p_ColourDepth6Bit    rs.l 1        ; set to 64 colours
  58. Pllb_c2p_ColourDepth8Bit    rs.l 1        ; set to 256 colours
  59.  
  60.         rsreset
  61.  
  62. Pllb_C2p_PIxelWidth1        rs.b 1
  63. Pllb_C2p_PIxelWidth2        rs.b 1
  64. Pllb_C2p_PIxelWidth4        rs.b 1
  65.  
  66.         rsreset
  67.  
  68. Pllb_C2p_Type_Normal            rs.b 1
  69. Pllb_C2p_Type_Delta            rs.b 1
  70. Pllb_C2p_Type_Nullskip            rs.b 1
  71. Pllb_C2p_Type_DeltaNullskip        rs.b 1
  72.  
  73. Pllb_C2p_Type_Size            rs.b 1
  74.  
  75.  
  76.         rsreset
  77.  
  78. Pllb_C2p_Not_Active        rs.b 1
  79. Pllb_C2p_Active            rs.b 1
  80.  
  81.  
  82.  
  83. ;    -    -    -    -    -    -    -    -    -
  84.  
  85.  
  86. Pllb_C2p_DeltaNullSkip_buffer_pointer:    dc.l 0
  87.  
  88.  
  89. Pllb_C2p_FastBuffer_PointerA:    dc.l 0        ; pointer to precalc buf A
  90. Pllb_C2p_FastBuffer_PointerB:    dc.l 0        
  91. Pllb_C2p_FastBuffer_PointerC:    dc.l 0
  92. Pllb_C2p_FastBuffer_PointerD:    dc.l 0
  93.  
  94.  
  95. Pllb_C2p_Enabled_Flag:        dc.w Pllb_c2p_Not_Active
  96.  
  97. PllB_C2p_FastRam_BUfferSize:    dc.w 0
  98.  
  99. Pllb_C2p_ColourDepth:        dc.w Pllb_c2p_ColourDepth8bit
  100.  
  101. Pllb_C2p_PixelWidth:        dc.w pllb_c2p_pixelwidth1
  102.  
  103. Pllb_C2p_Conversion_Type:    dc.w pllb_c2p_type_Normal
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112. ;    -    -    -    -    -    -    -    -    -
  113.  
  114.  
  115. ;             >> Allocate Fast Ram Buffers <<
  116.  
  117. ;   This routine will attempt to allocate as many 512k buffers as possible
  118. ;   with a MAX of 4.
  119.  
  120. ;  Inputs:  NONE
  121.  
  122. ;  Returns: Sets 'Pllb_C2p_Active_Flag' upon either uccess or failure
  123.  
  124. ;    -    -    -    -    -    -    -    -    -
  125.  
  126.  
  127.  
  128. Pllb_Alloc_fast_buffers:
  129.  
  130.     move.w #Pllb_c2p_Not_Active,Pllb_C2p_Enabled_Flag
  131.  
  132.     lea.l Pllb_C2p_FastBuffer_PointerA(pc),a5
  133.  
  134.     move.l #0,d6        ; numb of blocks allocated
  135.  
  136.     moveq.l #3-1,d7
  137.  
  138. Pllb_Alloc_fast_buffers_lp:
  139.  
  140.     move.l $4.w,a6        
  141.     move.l #(1024*512),d0        ; buffer size
  142.     move.l #$4,d1            ; Memory type (FAST!)
  143.     jsr -198(a6)            ; err Alloc Mem ;)
  144.             
  145.     tst.l d0
  146.     beq.b Pllb_Alloc_fast_buffers_Skip
  147.  
  148.         move.l d0,(a5)+
  149.  
  150.         addq.l #4,d6        ; add another 512k bank
  151.  
  152. Pllb_Alloc_fast_buffers_Skip:
  153.  
  154.     dbf d7,Pllb_Alloc_fast_buffers_lp
  155.  
  156.     tst.w d6
  157.     beq.b Pllb_Alloc_fast_buffers_Failed
  158.  
  159.         subq.l #4,d6
  160.  
  161.         move.w d6,PllB_C2p_FastRam_BUfferSize
  162.  
  163.         move.w #Pllb_c2p_Active,Pllb_C2p_Enabled_Flag
  164.  
  165. Pllb_Alloc_fast_buffers_Failed:
  166.  
  167.  
  168.     rts
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178. ;    -    -    -    -    -    -    -    -    -
  179.  
  180. ;            >> De Allocate PLLB fast Ram buffers <<
  181.  
  182. ;    -    -    -    -    -    -    -    -    -
  183.  
  184.  
  185. Pllb_DeAlloc_fast_buffers:
  186.  
  187.     lea.l Pllb_C2p_FastBuffer_PointerA(pc),a5
  188.  
  189.     moveq.l #3-1,d7
  190.  
  191. Pllb_DeAlloc_fast_buffers_lp:
  192.  
  193.     move.l (a5)+,d0
  194.     beq.b Pllb_DeAlloc_fast_buffers_CONT
  195.  
  196.     move.l $4.w,a6        
  197.     move.l d0,a1
  198.     move.l #(1024*512),d0        ; buffer size
  199.     jsr -210(a6)            ; De-Alloc Mem ;)
  200.  
  201. Pllb_DeAlloc_fast_buffers_CONT:
  202.  
  203.     dbf d7,Pllb_DeAlloc_fast_buffers_lp
  204.  
  205.  
  206.     rts
  207.  
  208.  
  209.  
  210. ;    -    -    -    -    -    -    -    -    -
  211.  
  212. ;                 >> Wait Blitter <<
  213.  
  214. ;    -    -    -    -    -    -    -    -    -
  215.  
  216.  
  217. Pllb_C2p_Wait_blt:
  218.      btst #14,$dff002
  219.      bne.b Pllb_C2p_Wait_blt
  220.     rts
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227. ;    -    -    -    -    -    -    -    -    -
  228.  
  229. ;            >> Pllb-C2P Frame Buffer <<
  230.  
  231. ;    -    -    -    -    -    -    -    -    -
  232.  
  233.  
  234. Pllb_C2p_Process_Frame_Buffer:
  235.  
  236.         tst.w Pllb_C2p_Enabled_Flag
  237.         beq.b Pllb_C2p_process_frame_buffer_done
  238.  
  239.         moveq.l #0,d0
  240.         lea.l Pllb_C2P_ColourDepthTables(pc),a0
  241.         move.w Pllb_C2p_ColourDepth(pc),d0
  242.         move.l (a0,d0.w),a0    
  243.  
  244.         move.w Pllb_C2p_Conversion_Type(pc),d0
  245.         lsl.w #4,d0            
  246.         add.l d0,a0
  247.  
  248.         move.w Pllb_C2p_PixelWidth(pc),d0
  249.  
  250.         mulu #16*Pllb_C2p_Type_Size,d0
  251.         add.l d0,a0
  252.  
  253.         move.w PllB_C2p_FastRam_BUfferSize(pc),d0
  254.         add.l d0,a0
  255.  
  256.         move.l (a0),a0
  257.         jsr (a0)
  258.     
  259.         ; Wait for Blitter, then call the *FIRST* shift bitplane
  260.         ; process, ** REMEMBER ** you'll have to do the rest !!!  ;) 
  261.         
  262.         bsr Pllb_c2p_wait_blt
  263.  
  264.         move.w #1,Pllb_C2p_blit_flag
  265.         bra Pllb_C2p_blitter_resort_frame2
  266.  
  267. Pllb_C2p_process_frame_buffer_done:
  268.  
  269.         rts
  270.  
  271.  
  272.  
  273. Pllb_C2P_ColourDepthTables:
  274.  
  275.         dc.l  Pllb_c2p_4bit_routines
  276.         dc.l  Pllb_c2p_6bit_routines
  277.         dc.l  Pllb_c2p_8bit_routines
  278.  
  279.  
  280.  
  281. Pllb_c2p_8bit_routines:
  282.  
  283.         ; 8bit pixelwidth1
  284.  
  285.     
  286.         dc.l Pllb_C2p_8bit_512k_1by1
  287.         dc.l Pllb_C2p_8bit_1Meg_1by1
  288.         dc.l Pllb_C2p_8bit_1_5meg_1by1
  289.         dc.l Pllb_C2p_8bit_2meg_1by1
  290.  
  291.         dc.l Pllb_C2p_Delta_8bit_512k_1by1
  292.         dc.l Pllb_C2p_Delta_8bit_1meg_1by1
  293.         dc.l Pllb_C2p_Delta_8bit_1_5meg_1by1
  294.         dc.l Pllb_C2p_Delta_8bit_2meg_1by1
  295.  
  296.         dc.l Pllb_C2p_NullSkip_8bit_512k_1by1
  297.         dc.l Pllb_C2p_NullSkip_8bit_1meg_1by1
  298.         dc.l Pllb_C2p_NullSkip_8bit_1_5meg_1by1
  299.         dc.l Pllb_C2p_NullSkip_8bit_2meg_1by1
  300.  
  301.  
  302.         dc.l Pllb_C2p_DeltaNullSkip_8bit_512k_1by1
  303.         dc.l Pllb_C2p_DeltaNullSkip_8bit_1meg_1by1
  304.         dc.l Pllb_C2p_DeltaNullSkip_8bit_1_5meg_1by1
  305.         dc.l Pllb_C2p_DeltaNullSkip_8bit_1_5meg_1by1
  306.  
  307.     
  308.  
  309.         ; 8bit pixelwidth2
  310.  
  311.  
  312.         dc.l Pllb_C2p_8bit_512k_2by1
  313.         dc.l Pllb_C2p_8bit_1Meg_2by1
  314.         dc.l Pllb_C2p_8bit_1Meg_2by1    
  315.         dc.l Pllb_C2p_8bit_1Meg_2by1
  316.  
  317.         dc.l Pllb_C2p_DELTA_8bit_512k_2by1
  318.         dc.l Pllb_C2p_DELTA_8bit_1Meg_2by1
  319.         dc.l Pllb_C2p_DELTA_8bit_1Meg_2by1
  320.         dc.l Pllb_C2p_DELTA_8bit_1Meg_2by1
  321.  
  322.         dc.l Pllb_C2p_NUllSkip_8bit_512k_2by1
  323.         dc.l Pllb_C2p_NUllSkip_8bit_1Meg_2by1
  324.         dc.l Pllb_C2p_NUllSkip_8bit_1Meg_2by1
  325.         dc.l Pllb_C2p_NUllSkip_8bit_1Meg_2by1
  326.  
  327.  
  328.         dc.l Pllb_C2p_DeltaNUllSkip_8bit_512k_2by1
  329.         dc.l Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1
  330.         dc.l Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1
  331.         dc.l Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1
  332.  
  333.  
  334.  
  335.         ; 8bit pixelwidth4
  336.  
  337.         dc.l Pllb_C2p_8bit_512k_4by1
  338.         dc.l Pllb_C2p_8bit_512k_4by1
  339.         dc.l Pllb_C2p_8bit_512k_4by1
  340.         dc.l Pllb_C2p_8bit_512k_4by1
  341.  
  342.         dc.l Pllb_C2p_DELTA_8bit_512k_4by1
  343.         dc.l Pllb_C2p_DELTA_8bit_512k_4by1
  344.         dc.l Pllb_C2p_DELTA_8bit_512k_4by1
  345.         dc.l Pllb_C2p_DELTA_8bit_512k_4by1
  346.  
  347.         dc.l Pllb_C2p_NULLSKIP_8bit_512k_4by1
  348.         dc.l Pllb_C2p_NULLSKIP_8bit_512k_4by1
  349.         dc.l Pllb_C2p_NULLSKIP_8bit_512k_4by1
  350.         dc.l Pllb_C2p_NULLSKIP_8bit_512k_4by1
  351.  
  352.         dc.l Pllb_C2p_DeltaNULLSKIP_8bit_512k_4by1
  353.         dc.l Pllb_C2p_DeltaNULLSKIP_8bit_512k_4by1
  354.         dc.l Pllb_C2p_DeltaNULLSKIP_8bit_512k_4by1
  355.         dc.l Pllb_C2p_DeltaNULLSKIP_8bit_512k_4by1
  356.  
  357.  
  358.  
  359.  
  360.  
  361. Pllb_c2p_6bit_routines:
  362.  
  363.         ; 6bit pixelwidth1
  364.         
  365.         dc.l Pllb_C2p_6bit_512k_1by1
  366.         dc.l Pllb_C2p_6bit_1Meg_1by1
  367.         dc.l Pllb_C2p_6bit_1_5meg_1by1
  368.         dc.l Pllb_C2p_6bit_2meg_1by1
  369.  
  370.         dc.l Pllb_C2p_Delta_6bit_512k_1by1
  371.         dc.l Pllb_C2p_Delta_6bit_1meg_1by1
  372.         dc.l Pllb_C2p_Delta_6bit_1_5meg_1by1
  373.         dc.l Pllb_C2p_Delta_6bit_2meg_1by1
  374.  
  375.         dc.l Pllb_C2p_NullSkip_6bit_512k_1by1
  376.         dc.l Pllb_C2p_NullSkip_6bit_1meg_1by1
  377.         dc.l Pllb_C2p_NullSkip_6bit_1_5meg_1by1
  378.         dc.l Pllb_C2p_NullSkip_6bit_2meg_1by1
  379.  
  380.         dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_1by1
  381.         dc.l Pllb_C2p_DeltaNullSkip_6bit_1Meg_1by1
  382.         dc.l Pllb_C2p_DeltaNullSkip_6bit_1_5Meg_1by1
  383.         dc.l Pllb_C2p_DeltaNullSkip_6bit_1_5Meg_1by1
  384.  
  385.  
  386.         ; 6bit pixelwidth2
  387.  
  388.         dc.l Pllb_C2p_6bit_512k_2by1
  389.         dc.l Pllb_C2p_6bit_1Meg_2by1
  390.         dc.l Pllb_C2p_6bit_1Meg_2by1    
  391.         dc.l Pllb_C2p_6bit_1Meg_2by1
  392.  
  393.         dc.l Pllb_C2p_DELTA_6bit_512k_2by1
  394.         dc.l Pllb_C2p_DELTA_6bit_1Meg_2by1
  395.         dc.l Pllb_C2p_DELTA_6bit_1Meg_2by1
  396.         dc.l Pllb_C2p_DELTA_6bit_1Meg_2by1
  397.  
  398.         dc.l Pllb_C2p_NULLSKIP_6bit_512k_2by1
  399.         dc.l Pllb_C2p_NULLSKIP_6bit_1Meg_2by1
  400.         dc.l Pllb_C2p_NULLSKIP_6bit_1Meg_2by1
  401.         dc.l Pllb_C2p_NULLSKIP_6bit_1Meg_2by1
  402.  
  403.  
  404.         dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_2by1
  405.         dc.l Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1
  406.         dc.l Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1
  407.         dc.l Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1
  408.  
  409.  
  410.  
  411.         ; 6bit pixelwidth4
  412.  
  413.         dc.l Pllb_C2p_6bit_512k_4by1
  414.         dc.l Pllb_C2p_6bit_512k_4by1
  415.         dc.l Pllb_C2p_6bit_512k_4by1
  416.         dc.l Pllb_C2p_6bit_512k_4by1
  417.  
  418.         dc.l Pllb_C2p_DELTA_6bit_512k_4by1
  419.         dc.l Pllb_C2p_DELTA_6bit_512k_4by1
  420.         dc.l Pllb_C2p_DELTA_6bit_512k_4by1
  421.         dc.l Pllb_C2p_DELTA_6bit_512k_4by1
  422.  
  423.         dc.l Pllb_C2p_NULLSKIP_6bit_512k_4by1
  424.         dc.l Pllb_C2p_NULLSKIP_6bit_512k_4by1
  425.         dc.l Pllb_C2p_NULLSKIP_6bit_512k_4by1
  426.         dc.l Pllb_C2p_NULLSKIP_6bit_512k_4by1
  427.  
  428.         dc.l Pllb_C2p_DeltaNullskip_6bit_512k_4by1
  429.         dc.l Pllb_C2p_DeltaNullskip_6bit_512k_4by1
  430.         dc.l Pllb_C2p_DeltaNullskip_6bit_512k_4by1
  431.         dc.l Pllb_C2p_DeltaNullskip_6bit_512k_4by1
  432.  
  433.  
  434.  
  435. Pllb_C2P_4bit_Routines:
  436.  
  437.         ; 4bit pixelwidth1
  438.         
  439.     
  440.         dc.l Pllb_C2p_4bit_512K_1by1
  441.         dc.l Pllb_C2p_4bit_512K_1by1
  442.         dc.l Pllb_C2p_4bit_512K_1by1
  443.         dc.l Pllb_C2p_4bit_512K_1by1
  444.     
  445.         dc.l Pllb_C2p_DELTA_4bit_512K_1by1
  446.         dc.l Pllb_C2p_DELTA_4bit_512K_1by1
  447.         dc.l Pllb_C2p_DELTA_4bit_512K_1by1
  448.         dc.l Pllb_C2p_DELTA_4bit_512K_1by1
  449.  
  450.         dc.l Pllb_C2p_NULLSKIP_4bit_512K_1by1
  451.         dc.l Pllb_C2p_NULLSKIP_4bit_512K_1by1
  452.         dc.l Pllb_C2p_NULLSKIP_4bit_512K_1by1
  453.         dc.l Pllb_C2p_NULLSKIP_4bit_512K_1by1
  454.  
  455.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512K_1by1
  456.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512K_1by1
  457.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512K_1by1
  458.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512K_1by1
  459.  
  460.  
  461.  
  462.         ; 4bit pixelwidth2
  463.         
  464.         dc.l Pllb_C2p_4bit_512k_2by1
  465.         dc.l Pllb_C2p_4bit_512k_2by1
  466.         dc.l Pllb_C2p_4bit_512k_2by1
  467.         dc.l Pllb_C2p_4bit_512k_2by1
  468.  
  469.         dc.l Pllb_C2p_DELTA_4bit_512k_2by1
  470.         dc.l Pllb_C2p_DELTA_4bit_512k_2by1
  471.         dc.l Pllb_C2p_DELTA_4bit_512k_2by1
  472.         dc.l Pllb_C2p_DELTA_4bit_512k_2by1
  473.  
  474.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_2by1
  475.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_2by1
  476.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_2by1
  477.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_2by1
  478.  
  479.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_2by1
  480.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_2by1
  481.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_2by1
  482.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_2by1
  483.  
  484.  
  485.         ; 4bit pixelwidth4
  486.     
  487.         dc.l Pllb_C2p_4bit_512K_4by1
  488.         dc.l Pllb_C2p_4bit_512K_4by1
  489.         dc.l Pllb_C2p_4bit_512K_4by1
  490.         dc.l Pllb_C2p_4bit_512K_4by1
  491.  
  492.         dc.l Pllb_C2p_DELTA_4bit_512k_4by1
  493.         dc.l Pllb_C2p_DELTA_4bit_512k_4by1
  494.         dc.l Pllb_C2p_DELTA_4bit_512k_4by1
  495.         dc.l Pllb_C2p_DELTA_4bit_512k_4by1
  496.  
  497.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_4by1
  498.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_4by1
  499.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_4by1
  500.         dc.l Pllb_C2p_NULLSKIP_4bit_512k_4by1
  501.  
  502.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_4by1
  503.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_4by1
  504.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_4by1
  505.         dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_4by1
  506.  
  507.  
  508.  
  509.  
  510. pllb_version:    
  511.  
  512.     dc.b "Pllbc2p "
  513.     pllbversion
  514.     dc.b "   Written By Kevin Picone"
  515.     
  516.  
  517.     even
  518.  
  519. ;    -    -    -    -    -    -    -    -    -
  520.  
  521. ;              >> Init NORMAL c2p registers <<
  522.  
  523. ;    -    -    -    -    -    -    -    -    -
  524.  
  525.  
  526. Pllb_c2p_init_Normal_c2p_registers:
  527.  
  528.     move.l Pllb_C2P_Chunky_Frame_bufferA(pc),a0
  529.     Move.l Pllb_C2p_Temp_Image_buffer(pc),a1
  530.     bra.b Pllb_c2p_init_c2p_registers
  531.  
  532.  
  533.  
  534.  
  535.  
  536. ;    -    -    -    -    -    -    -    -    -
  537.  
  538. ;              >> Init DELTA c2p registers <<
  539.  
  540. ;    -    -    -    -    -    -    -    -    -
  541.  
  542. Pllb_c2p_init_DELTA_c2p_registers:
  543.     move.l Pllb_C2P_Chunky_Frame_bufferB(pc),a0
  544.     move.l Pllb_C2P_Chunky_Frame_bufferA(pc),a1
  545.     bra.b Pllb_c2p_init_c2p_registers
  546.  
  547.  
  548.  
  549. Pllb_c2p_init_NULLSKIP_c2p_registers:
  550.  
  551.     move.l Pllb_C2P_Chunky_Frame_bufferA(pc),a0
  552.     move.l a0,a1
  553.     bra.b Pllb_c2p_init_c2p_registers
  554.  
  555.  
  556.  
  557. Pllb_c2p_init_DELTANULLSKIP_c2p_registers:
  558.  
  559.     move.l Pllb_C2P_Chunky_Frame_bufferA(pc),a0
  560.     move.l a0,a1
  561.     bsr.b Pllb_c2p_init_c2p_registers
  562.  
  563.     move.l Pllb_C2p_DeltaNullSkip_buffer_pointer(pc),a6
  564.  
  565.     rts
  566.  
  567.  
  568.  
  569.  
  570. Pllb_c2p_init_c2p_registers:
  571.  
  572.     Move.l Pllb_C2p_Temp_Image_buffer(pc),a2
  573.  
  574.     move.l Pllb_C2p_FastBuffer_PointerA(pc),a3
  575.     move.l Pllb_C2p_FastBuffer_PointerB(pc),a4
  576.     move.l Pllb_C2p_FastBuffer_PointerC(pc),a5
  577.     move.l Pllb_C2p_FastBuffer_PointerD(pc),a6
  578.  
  579.     move.l #$ff00ff00,d2
  580.     move.w PLLB_C2P_ChunkyScreenSize(pc),d7
  581.     subq.l #1,d7
  582.     rts
  583.  
  584.  
  585.  
  586. ;    -    -    -    -    -    -    -    -    -
  587.  
  588. ;               >> NORMAL 256colour Pllb-C2P <<
  589.  
  590. ;                Single pixel Width
  591.  
  592. ;                512k fastram version
  593.  
  594. ;    -    -    -    -    -    -    -    -    -
  595.  
  596. Pllb_C2p_8bit_512K_1by1:
  597.  
  598.     bsr Pllb_c2p_init_Normal_c2p_registers
  599.  
  600.     ; a4,a5,a6 not used
  601.  
  602.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  603.  
  604.  
  605. Pllb_C2p_8bit_512K_1by1_AP:
  606.  
  607.     clr.l d1
  608.     move.l (a0)+,d0
  609.     move.w d0,d1    
  610.     clr.w d0
  611.     bra.b Pllb_C2p_8bit_512K_1by1_skip
  612.     nop
  613.     nop
  614.     nop
  615.  
  616. Pllb_C2p_8bit_512K_1by1_lp:
  617.     
  618.     clr.l d1
  619.     move.l (a0)+,d0
  620.     move.w d0,d1    
  621.     clr.w d0
  622.  
  623.         move.l d4,(a1)+        ; pipelined Write to Chipram
  624.  
  625. Pllb_C2p_8bit_512K_1by1_skip:
  626.  
  627.     swap d0
  628.     lsl.l #3,d0
  629.  
  630.     move.l (a3,d0),d3
  631.     move.l 4(a3,d0),d4
  632.  
  633.         lsl.l #2,d3
  634.     lsl.l #3,d1
  635.         lsl.l #2,d4
  636.  
  637.     or.l (a3,d1),d3
  638.     or.l 4(a3,d1),d4
  639.  
  640.         lsl.l #2,d3
  641.         lsl.l #2,d4
  642.  
  643.     clr.l d1
  644.     move.l (a0)+,d0
  645.     move.w d0,d1    
  646.     clr.w d0
  647.     swap d0
  648.     lsl.l #3,d0
  649.  
  650.     or.l (a3,d0),d3
  651.     or.l 4(a3,d0),d4
  652.  
  653.         lsl.l #2,d3
  654.         lsl.l #2,d4
  655.  
  656.     lsl.l #3,d1
  657.     or.l (a3,d1),d3
  658.     or.l 4(a3,d1),d4
  659.  
  660.  
  661. ; store 8 planar bytes
  662.  
  663.  
  664.     ; d0 = bytes ABCD
  665.  
  666.  
  667.     clr.l d1
  668.     move.l (a0)+,d0
  669.     move.w d0,d1    
  670.     clr.w d0
  671.     swap d0
  672.     lsl.l #3,d0
  673.  
  674.     move.l (a3,d0),d5
  675.     move.l 4(a3,d0),d6
  676.  
  677.         lsl.l #2,d5
  678.     lsl.l #3,d1
  679.         lsl.l #2,d6
  680.  
  681.     or.l (a3,d1),d5
  682.     or.l 4(a3,d1),d6
  683.  
  684.         lsl.l #2,d5
  685.         lsl.l #2,d6
  686.         
  687.     clr.l d1
  688.     move.l (a0)+,d0
  689.     move.w d0,d1    
  690.     clr.w d0
  691.     swap d0
  692.     lsl.l #3,d0
  693.  
  694.     or.l (a3,d0),d5
  695.     or.l 4(a3,d0),d6
  696.  
  697.         lsl.l #2,d5
  698.     lsl.l #3,d1
  699.         lsl.l #2,d6
  700.  
  701.     move.l d3,d0        
  702.  
  703.     or.l (a3,d1),d5
  704.     or.l 4(a3,d1),d6
  705.  
  706.                 ; resort the planar bytes into words 
  707.  
  708.     move.l d5,d1
  709.  
  710.     and.l d2,d0
  711.     and.l d2,d1
  712.  
  713.     eor.l d0,d3
  714.     eor.l d1,d5
  715.  
  716.     lsr.l #8,d1
  717.  
  718.     or.l d1,d0        ; d0 = A1a2c1c2
  719.  
  720.     move.l d0,(a1)+        
  721.  
  722.     lsl.l #8,d3
  723.  
  724.         move.l d4,d0        
  725.  
  726.     or.l d5,d3
  727.  
  728.         move.l d6,d1
  729.  
  730.     move.l d3,(a1)+        ; d3 = b1b2d1d2
  731.  
  732.  
  733.     and.l d2,d0
  734.     and.l d2,d1
  735.  
  736.     eor.l d0,d4
  737.     eor.l d1,d6
  738.  
  739.     lsr.l #8,d1
  740.     or.l d1,d0        ; d0 = A1a2c1c2
  741.  
  742.     move.l d0,(a1)+        
  743.  
  744.     lsl.l #8,d4
  745.     or.l d6,d4
  746.  
  747.     dbf d7,Pllb_C2p_8bit_512K_1by1_lp
  748.  
  749.     move.l d4,(a1)+        ; output last long word
  750.     rts
  751.  
  752.  
  753. Pllb_C2p_8bit_512K_1by1_APend
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760. ;    -    -    -    -    -    -    -    -    -
  761.  
  762. ;               >> NORMAL 256colour Pllb-C2P <<
  763.  
  764. ;                Single pixel Width
  765.  
  766. ;                1meg fastram version
  767.  
  768. ;    -    -    -    -    -    -    -    -    -
  769.  
  770. Pllb_C2p_8bit_1Meg_1by1:
  771.  
  772.     bsr Pllb_c2p_init_Normal_c2p_registers
  773.  
  774.     ; a5,a6 not used
  775.  
  776.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  777.  
  778.  
  779. Pllb_C2p_8bit_1Meg_1by1_AP:
  780.  
  781.     clr.l d1
  782.     move.l (a0)+,d0
  783.     move.w d0,d1    
  784.     clr.w d0
  785.     bra.b Pllb_C2p_8bit_1Meg_1by1_skip
  786.     nop
  787.     nop
  788.     nop
  789.  
  790. Pllb_C2p_8bit_1Meg_1by1_lp:
  791.     
  792.     clr.l d1
  793.     move.l (a0)+,d0
  794.     move.w d0,d1    
  795.     clr.w d0
  796.  
  797.         move.l d4,(a1)+        ; pipelined Write to Chipram
  798.  
  799. Pllb_C2p_8bit_1Meg_1by1_skip:
  800.  
  801.     swap d0
  802.     lsl.l #3,d0
  803.  
  804.     move.l (a4,d0),d3
  805.     move.l 4(a4,d0),d4
  806.  
  807.         lsl.l #2,d3
  808.     lsl.l #3,d1
  809.         lsl.l #2,d4
  810.  
  811.     or.l (a4,d1),d3
  812.     or.l 4(a4,d1),d4
  813.  
  814.         lsl.l #2,d3
  815.         lsl.l #2,d4
  816.  
  817.     clr.l d1
  818.     move.l (a0)+,d0
  819.     move.w d0,d1    
  820.     clr.w d0
  821.     swap d0
  822.     lsl.l #3,d0
  823.  
  824.     or.l (a4,d0),d3
  825.     or.l 4(a4,d0),d4
  826.  
  827.     lsl.l #3,d1
  828.     or.l (a3,d1),d3
  829.     or.l 4(a3,d1),d4
  830.  
  831.  
  832.     clr.l d1
  833.     move.l (a0)+,d0
  834.     move.w d0,d1    
  835.     clr.w d0
  836.     swap d0
  837.     lsl.l #3,d0
  838.  
  839.     move.l (a4,d0),d5
  840.     move.l 4(a4,d0),d6
  841.  
  842.         lsl.l #2,d5
  843.     lsl.l #3,d1
  844.         lsl.l #2,d6
  845.  
  846.     or.l (a4,d1),d5
  847.     or.l 4(a4,d1),d6
  848.  
  849.         lsl.l #2,d5
  850.         lsl.l #2,d6
  851.         
  852.     clr.l d1
  853.     move.l (a0)+,d0
  854.     move.w d0,d1    
  855.     clr.w d0
  856.     swap d0
  857.     lsl.l #3,d0
  858.  
  859.     or.l (a4,d0),d5
  860.     or.l 4(a4,d0),d6
  861.  
  862.     lsl.l #3,d1
  863.  
  864.     or.l (a3,d1),d5
  865.     or.l 4(a3,d1),d6
  866.  
  867.     move.l d3,d0        
  868.     move.l d5,d1
  869.  
  870.     and.l d2,d0
  871.     and.l d2,d1
  872.  
  873.     eor.l d0,d3
  874.     eor.l d1,d5
  875.  
  876.     lsr.l #8,d1
  877.  
  878.     or.l d1,d0        ; d0 = A1a2c1c2
  879.  
  880.     move.l d0,(a1)+        
  881.  
  882.     lsl.l #8,d3
  883.  
  884.         move.l d4,d0        
  885.  
  886.     or.l d5,d3
  887.  
  888.         move.l d6,d1
  889.  
  890.     move.l d3,(a1)+        ; d3 = b1b2d1d2
  891.  
  892.  
  893.     and.l d2,d0
  894.     and.l d2,d1
  895.  
  896.     eor.l d0,d4
  897.     eor.l d1,d6
  898.  
  899.     lsr.l #8,d1
  900.     or.l d1,d0        ; d0 = A1a2c1c2
  901.  
  902.     move.l d0,(a1)+        
  903.  
  904.     lsl.l #8,d4
  905.     or.l d6,d4
  906.  
  907.     dbf d7,Pllb_C2p_8bit_1Meg_1by1_lp
  908.  
  909.     move.l d4,(a1)+        ; output last long word
  910.     rts
  911.  
  912.  
  913. Pllb_C2p_8bit_1Meg_1by1_APend
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921. ;    -    -    -    -    -    -    -    -    -
  922.  
  923. ;               >> NORMAL 256colour Pllb-C2P <<
  924.  
  925. ;                Single pixel Width
  926.  
  927. ;               1.5meg fastram version
  928.  
  929. ;    -    -    -    -    -    -    -    -    -
  930.  
  931. Pllb_C2p_8bit_1_5meg_1by1:
  932.  
  933.     bsr Pllb_c2p_init_Normal_c2p_registers
  934.  
  935.     ; a6 table not used
  936.  
  937.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  938.  
  939.  
  940. Pllb_C2p_8bit_1_5meg_1by1_AP:
  941.  
  942.     clr.l d1
  943.     move.l (a0)+,d0
  944.     move.w d0,d1    
  945.     clr.w d0
  946.     bra.b Pllb_C2p_8bit_1_5meg_1by1_skip
  947.     nop
  948.     nop
  949.     nop
  950.  
  951. Pllb_C2p_8bit_1_5meg_1by1_lp:
  952.     
  953.     clr.l d1
  954.     move.l (a0)+,d0
  955.     move.w d0,d1    
  956.     clr.w d0
  957.  
  958.         move.l d4,(a1)+        ; pipelined Write to Chipram
  959.  
  960. Pllb_C2p_8bit_1_5meg_1by1_skip:
  961.  
  962.     swap d0
  963.     lsl.l #3,d0
  964.  
  965.     move.l (a5,d0),d3
  966.     move.l 4(a5,d0),d4
  967.  
  968.         lsl.l #2,d3
  969.     lsl.l #3,d1
  970.         lsl.l #2,d4
  971.  
  972.     or.l (a5,d1),d3
  973.     or.l 4(a5,d1),d4
  974.  
  975.  
  976.     clr.l d1
  977.     move.l (a0)+,d0
  978.     move.w d0,d1    
  979.     clr.w d0
  980.     swap d0
  981.     lsl.l #3,d0
  982.  
  983.     or.l (a4,d0),d3
  984.     or.l 4(a4,d0),d4
  985.  
  986.     lsl.l #3,d1
  987.     or.l (a3,d1),d3
  988.     or.l 4(a3,d1),d4
  989.  
  990.  
  991.     clr.l d1
  992.     move.l (a0)+,d0
  993.     move.w d0,d1    
  994.     clr.w d0
  995.     swap d0
  996.     lsl.l #3,d0
  997.  
  998.     move.l (a5,d0),d5
  999.     move.l 4(a5,d0),d6
  1000.  
  1001.         lsl.l #2,d5
  1002.     lsl.l #3,d1
  1003.         lsl.l #2,d6
  1004.  
  1005.     or.l (a5,d1),d5
  1006.     or.l 4(a5,d1),d6
  1007.  
  1008.     clr.l d1
  1009.     move.l (a0)+,d0
  1010.     move.w d0,d1    
  1011.     clr.w d0
  1012.     swap d0
  1013.     lsl.l #3,d0
  1014.  
  1015.     or.l (a4,d0),d5
  1016.     or.l 4(a4,d0),d6
  1017.  
  1018.     lsl.l #3,d1
  1019.  
  1020.     or.l (a3,d1),d5
  1021.     or.l 4(a3,d1),d6
  1022.  
  1023.     move.l d3,d0        
  1024.     move.l d5,d1
  1025.  
  1026.     and.l d2,d0
  1027.     and.l d2,d1
  1028.  
  1029.     eor.l d0,d3
  1030.     eor.l d1,d5
  1031.  
  1032.     lsr.l #8,d1
  1033.  
  1034.     or.l d1,d0        ; d0 = A1a2c1c2
  1035.  
  1036.     move.l d0,(a1)+        
  1037.  
  1038.     lsl.l #8,d3
  1039.  
  1040.         move.l d4,d0        
  1041.  
  1042.     or.l d5,d3
  1043.  
  1044.         move.l d6,d1
  1045.  
  1046.     move.l d3,(a1)+        ; d3 = b1b2d1d2
  1047.  
  1048.  
  1049.     and.l d2,d0
  1050.     and.l d2,d1
  1051.  
  1052.     eor.l d0,d4
  1053.     eor.l d1,d6
  1054.  
  1055.     lsr.l #8,d1
  1056.     or.l d1,d0        ; d0 = A1a2c1c2
  1057.  
  1058.     move.l d0,(a1)+        
  1059.  
  1060.     lsl.l #8,d4
  1061.     or.l d6,d4
  1062.  
  1063.     dbf d7,Pllb_C2p_8bit_1_5meg_1by1_lp
  1064.  
  1065.     move.l d4,(a1)+        ; output last long word
  1066.     rts
  1067.  
  1068.  
  1069. Pllb_C2p_8bit_1_5meg_1by1_APend
  1070.  
  1071.  
  1072.  
  1073.  
  1074. ;    -    -    -    -    -    -    -    -    -
  1075.  
  1076. ;               >> NORMAL 256colour Pllb-C2P <<
  1077.  
  1078. ;                Single pixel Width
  1079.  
  1080. ;               2meg fastram version
  1081.  
  1082. ;    -    -    -    -    -    -    -    -    -
  1083.  
  1084. Pllb_C2p_8bit_2meg_1by1:
  1085.  
  1086.     bsr Pllb_c2p_init_Normal_c2p_registers
  1087.  
  1088.  
  1089.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  1090.  
  1091.  
  1092. Pllb_C2p_8bit_2meg_1by1_AP:
  1093.  
  1094.     clr.l d1
  1095.     move.l (a0)+,d0
  1096.     move.w d0,d1    
  1097.     clr.w d0
  1098.     bra.b Pllb_C2p_8bit_2meg_1by1_skip
  1099.     nop
  1100.     nop
  1101.     nop
  1102.  
  1103. Pllb_C2p_8bit_2meg_1by1_lp:
  1104.     
  1105.     ; d0 = bytes ABCD
  1106.  
  1107.     clr.l d1
  1108.     move.l (a0)+,d0
  1109.     move.w d0,d1    
  1110.     clr.w d0
  1111.  
  1112.         move.l d4,(a1)+        ; pipelined Write to Chipram
  1113.  
  1114. Pllb_C2p_8bit_2meg_1by1_skip:
  1115.  
  1116.     swap d0
  1117.     lsl.l #3,d0
  1118.  
  1119.     move.l (a6,d0),d3
  1120.     move.l 4(a6,d0),d4
  1121.  
  1122.     lsl.l #3,d1
  1123.     or.l (a5,d1),d3
  1124.     or.l 4(a5,d1),d4
  1125.  
  1126.     clr.l d1
  1127.     move.l (a0)+,d0
  1128.     move.w d0,d1    
  1129.     clr.w d0
  1130.     swap d0
  1131.     lsl.l #3,d0
  1132.  
  1133.     or.l (a4,d0),d3
  1134.     or.l 4(a4,d0),d4
  1135.  
  1136.     lsl.l #3,d1
  1137.     or.l (a3,d1),d3
  1138.     or.l 4(a3,d1),d4
  1139.  
  1140.  
  1141.     clr.l d1
  1142.     move.l (a0)+,d0
  1143.     move.w d0,d1    
  1144.     clr.w d0
  1145.     swap d0
  1146.     lsl.l #3,d0
  1147.  
  1148.     move.l (a6,d0),d5
  1149.     move.l 4(a6,d0),d6
  1150.  
  1151.     lsl.l #3,d1
  1152.     or.l (a5,d1),d5
  1153.     or.l 4(a5,d1),d6
  1154.  
  1155.  
  1156.     clr.l d1
  1157.     move.l (a0)+,d0
  1158.     move.w d0,d1    
  1159.     clr.w d0
  1160.     swap d0
  1161.     lsl.l #3,d0
  1162.  
  1163.     or.l (a4,d0),d5
  1164.     or.l 4(a4,d0),d6
  1165.  
  1166.     lsl.l #3,d1
  1167.     or.l (a3,d1),d5
  1168.     or.l 4(a3,d1),d6
  1169.  
  1170.  
  1171.     move.l d3,d0        
  1172.     move.l d5,d1
  1173.  
  1174.     and.l d2,d0
  1175.     and.l d2,d1
  1176.  
  1177.     eor.l d0,d3
  1178.     eor.l d1,d5
  1179.  
  1180.     lsr.l #8,d1
  1181.     or.l d1,d0        ; d0 = A1a2c1c2
  1182.  
  1183.     move.l d0,(a1)+        
  1184.  
  1185.     lsl.l #8,d3
  1186.  
  1187.         move.l d4,d0        
  1188.  
  1189.     or.l d5,d3
  1190.  
  1191.         move.l d6,d1
  1192.  
  1193.     move.l d3,(a1)+        ; d3 = b1b2d1d2
  1194.  
  1195.  
  1196.     and.l d2,d0
  1197.     and.l d2,d1
  1198.  
  1199.     eor.l d0,d4
  1200.     eor.l d1,d6
  1201.  
  1202.     lsr.l #8,d1
  1203.     or.l d1,d0        ; d0 = A1a2c1c2
  1204.  
  1205.     move.l d0,(a1)+        
  1206.  
  1207.     lsl.l #8,d4
  1208.     or.l d6,d4
  1209.  
  1210.     dbf d7,Pllb_C2p_8bit_2meg_1by1_lp
  1211.  
  1212.     move.l d4,(a1)+        ; output last long word
  1213.     rts
  1214.  
  1215.  
  1216. Pllb_C2p_8bit_2meg_1by1_APend
  1217.  
  1218.  
  1219.  
  1220.  
  1221. ;    -    -    -    -    -    -    -    -    -
  1222.  
  1223. ;              >> DELTA 256 colour Pllb-C2P <<
  1224.  
  1225. ;                Single pixel Width
  1226.  
  1227. ;               512k fastram version
  1228.  
  1229. ;    -    -    -    -    -    -    -    -    -
  1230.  
  1231.  
  1232. Pllb_C2p_Delta_8bit_512k_1by1:
  1233.  
  1234.     bsr Pllb_c2p_init_DELTA_c2p_registers
  1235.  
  1236.                 ; a4,a5,a6 tables     NOT USED!
  1237.  
  1238.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  1239.  
  1240.  
  1241. Pllb_C2p_Delta_8bit_512k_1by1_AP:
  1242.  
  1243. Pllb_C2p_Delta_8bit_512k_1by1_LP:
  1244.  
  1245.     move.l (a0)+,d4
  1246.     move.l (a0)+,d5
  1247.     move.l (a0)+,d6
  1248.     move.l (a0)+,d0
  1249.  
  1250.     cmp.l (a1)+,d4
  1251.     bne.b Pllb_C2p_Delta_8bit_512k_1by1_cont4
  1252.  
  1253.     cmp.l (a1)+,d5
  1254.     bne.b Pllb_C2p_Delta_8bit_512k_1by1_cont3
  1255.  
  1256.     cmp.l (a1)+,d6
  1257.     bne.b Pllb_C2p_Delta_8bit_512k_1by1_cont2
  1258.  
  1259.     cmp.l (a1)+,d0
  1260.     bne.b Pllb_C2p_Delta_8bit_512k_1by1_cont1
  1261.  
  1262.         add.w #16,a2
  1263.  
  1264.         dbf d7,Pllb_C2p_Delta_8bit_512k_1by1_LP
  1265.  
  1266.     rts
  1267.     nop
  1268.  
  1269. Pllb_C2p_Delta_8bit_512k_1by1_cont4:
  1270.  
  1271.     addq.l #4,a1
  1272.  
  1273. Pllb_C2p_Delta_8bit_512k_1by1_cont3:
  1274.  
  1275.     addq.l #4,a1
  1276.  
  1277. Pllb_C2p_Delta_8bit_512k_1by1_cont2:
  1278.  
  1279.     addq.l #4,a1
  1280.  
  1281. Pllb_C2p_Delta_8bit_512k_1by1_cont1:
  1282.  
  1283.  
  1284.     clr.l d1
  1285.     move.w d4,d1    
  1286.     clr.w d4
  1287.     swap d4
  1288.     lsl.l #3,d4
  1289.  
  1290.     move.l (a3,d4),d3
  1291.     move.l 4(a3,d4),d4
  1292.         lsl.l #2,d3
  1293.         lsl.l #2,d4
  1294.  
  1295.  
  1296.     lsl.l #3,d1
  1297.     or.l (a3,d1),d3
  1298.     or.l 4(a3,d1),d4
  1299.  
  1300.     lsl.l #2,d3
  1301.     lsl.l #2,d4
  1302.  
  1303.  
  1304.     clr.l d1
  1305.     move.w d5,d1    
  1306.  
  1307.     clr.w d5
  1308.     swap d5
  1309.  
  1310.     lsl.l #3,d5
  1311.     lsl.l #3,d1
  1312.  
  1313.     or.l (a3,d5),d3
  1314.     or.l 4(a3,d5),d4
  1315.  
  1316.         lsl.l #2,d3
  1317.         lsl.l #2,d4
  1318.  
  1319.     or.l (a3,d1),d3
  1320.     or.l 4(a3,d1),d4
  1321.  
  1322.  
  1323. ; store 8 planar bytes
  1324.  
  1325.  
  1326.     ; d0 = bytes ABCD
  1327.  
  1328.     clr.l d1
  1329.     move.w d6,d1    
  1330.     clr.w d6
  1331.     swap d6
  1332.     lsl.l #3,d6
  1333.  
  1334.     move.l (a3,d6),d5
  1335.     move.l 4(a3,d6),d6
  1336.         lsl.l #2,d5
  1337.         lsl.l #2,d6
  1338.  
  1339.     lsl.l #3,d1
  1340.     or.l (a3,d1),d5
  1341.     or.l 4(a3,d1),d6
  1342.  
  1343.         lsl.l #2,d5
  1344.         lsl.l #2,d6
  1345.  
  1346.  
  1347.     clr.l d1
  1348.     move.w d0,d1    
  1349.     clr.w d0
  1350.     swap d0
  1351.     lsl.l #3,d0
  1352.  
  1353.     lsl.l #3,d1
  1354.  
  1355.     or.l (a3,d0),d5
  1356.     or.l 4(a3,d0),d6
  1357.  
  1358.         lsl.l #2,d5
  1359.         lsl.l #2,d6
  1360.  
  1361.     or.l (a3,d1),d5
  1362.     or.l 4(a3,d1),d6
  1363.  
  1364.  
  1365.     move.l d3,d0        
  1366.     move.l d5,d1
  1367.  
  1368.     and.l d2,d0
  1369.     and.l d2,d1
  1370.  
  1371.     eor.l d0,d3
  1372.     eor.l d1,d5
  1373.  
  1374.     lsr.l #8,d1
  1375.     or.l d1,d0        ; d0 = A1a2c1c2
  1376.  
  1377.     move.l d0,(a2)+        
  1378.  
  1379.     lsl.l #8,d3
  1380.  
  1381.         move.l d4,d0        
  1382.  
  1383.     or.l d5,d3
  1384.  
  1385.         move.l d6,d1
  1386.  
  1387.  
  1388.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  1389.  
  1390.  
  1391.  
  1392.     and.l d2,d0
  1393.     and.l d2,d1
  1394.  
  1395.     eor.l d0,d4
  1396.     eor.l d1,d6
  1397.  
  1398.     lsr.l #8,d1
  1399.     or.l d1,d0        ; d0 = A1a2c1c2
  1400.  
  1401.     move.l d0,(a2)+        
  1402.  
  1403.     lsl.l #8,d4
  1404.     or.l d6,d4
  1405.  
  1406.     move.l d4,(a2)+
  1407.     
  1408.  
  1409.     dbf d7,Pllb_C2p_Delta_8bit_512k_1by1_LP
  1410.  
  1411.     rts
  1412.  
  1413.  
  1414. Pllb_C2p_Delta_8bit_512k_1by1_APEND:
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420. ;    -    -    -    -    -    -    -    -    -
  1421.  
  1422. ;              >> DELTA 256 colour Pllb-C2P <<
  1423.  
  1424. ;                Single pixel Width
  1425.  
  1426. ;               1 Meg fastram version
  1427.  
  1428. ;    -    -    -    -    -    -    -    -    -
  1429.  
  1430.  
  1431. Pllb_C2p_Delta_8bit_1Meg_1by1:
  1432.  
  1433.     bsr Pllb_c2p_init_DELTA_c2p_registers
  1434.  
  1435.     ; a5,a6 tables     NOT USED!
  1436.  
  1437.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  1438.  
  1439.  
  1440. Pllb_C2p_Delta_8bit_1Meg_1by1_AP:
  1441.  
  1442. Pllb_C2p_Delta_8bit_1Meg_1by1_LP:
  1443.  
  1444.     move.l (a0)+,d4
  1445.     move.l (a0)+,d5
  1446.     move.l (a0)+,d6
  1447.     move.l (a0)+,d0
  1448.  
  1449.     cmp.l (a1)+,d4
  1450.     bne.b Pllb_C2p_Delta_8bit_1Meg_1by1_cont4
  1451.  
  1452.     cmp.l (a1)+,d5
  1453.     bne.b Pllb_C2p_Delta_8bit_1Meg_1by1_cont3
  1454.  
  1455.     cmp.l (a1)+,d6
  1456.     bne.b Pllb_C2p_Delta_8bit_1Meg_1by1_cont2
  1457.  
  1458.     cmp.l (a1)+,d0
  1459.     bne.b Pllb_C2p_Delta_8bit_1Meg_1by1_cont1
  1460.  
  1461.         add.w #16,a2
  1462.  
  1463.         dbf d7,Pllb_C2p_Delta_8bit_1Meg_1by1_LP
  1464.  
  1465.     rts
  1466.     nop
  1467.  
  1468. Pllb_C2p_Delta_8bit_1Meg_1by1_cont4:
  1469.  
  1470.     addq.l #4,a1
  1471.  
  1472. Pllb_C2p_Delta_8bit_1Meg_1by1_cont3:
  1473.  
  1474.     addq.l #4,a1
  1475.  
  1476. Pllb_C2p_Delta_8bit_1Meg_1by1_cont2:
  1477.  
  1478.     addq.l #4,a1
  1479.  
  1480. Pllb_C2p_Delta_8bit_1Meg_1by1_cont1:
  1481.  
  1482.     ; d0 = bytes ABCD
  1483.  
  1484.     clr.l d1
  1485.     move.w d4,d1    
  1486.     clr.w d4
  1487.     swap d4
  1488.     lsl.l #3,d4
  1489.  
  1490.     move.l (a4,d4),d3
  1491.     move.l 4(a4,d4),d4
  1492.         lsl.l #2,d3
  1493.         lsl.l #2,d4
  1494.  
  1495.  
  1496.     lsl.l #3,d1
  1497.     or.l (a4,d1),d3
  1498.     or.l 4(a4,d1),d4
  1499.  
  1500.         lsl.l #2,d3
  1501.         lsl.l #2,d4
  1502.  
  1503.  
  1504.     clr.l d1
  1505.  
  1506.     move.w d5,d1    
  1507.     clr.w d5
  1508.     swap d5
  1509.     lsl.l #3,d5
  1510.  
  1511.     or.l (a4,d5),d3
  1512.     or.l 4(a4,d5),d4
  1513.  
  1514.     lsl.l #3,d1
  1515.     or.l (a3,d1),d3
  1516.     or.l 4(a3,d1),d4
  1517.  
  1518.  
  1519.     clr.l d1
  1520.     move.w d6,d1    
  1521.     clr.w d6
  1522.     swap d6
  1523.     lsl.l #3,d6
  1524.  
  1525.     move.l (a4,d6),d5
  1526.     move.l 4(a4,d6),d6
  1527.         lsl.l #2,d5
  1528.         lsl.l #2,d6
  1529.  
  1530.     lsl.l #3,d1
  1531.     or.l (a4,d1),d5
  1532.     or.l 4(a4,d1),d6
  1533.  
  1534.         lsl.l #2,d5
  1535.         lsl.l #2,d6
  1536.  
  1537.  
  1538.     clr.l d1
  1539.     move.w d0,d1    
  1540.     clr.w d0
  1541.     swap d0
  1542.     lsl.l #3,d0
  1543.  
  1544.     or.l (a4,d0),d5
  1545.     or.l 4(a4,d0),d6
  1546.  
  1547.     lsl.l #3,d1
  1548.     or.l (a3,d1),d5
  1549.     or.l 4(a3,d1),d6
  1550.  
  1551.  
  1552.  
  1553.     move.l d3,d0        
  1554.     move.l d5,d1
  1555.  
  1556.     and.l d2,d0
  1557.     and.l d2,d1
  1558.  
  1559.     eor.l d0,d3
  1560.     eor.l d1,d5
  1561.  
  1562.     lsr.l #8,d1
  1563.     or.l d1,d0        ; d0 = A1a2c1c2
  1564.  
  1565.     move.l d0,(a2)+        
  1566.  
  1567.     lsl.l #8,d3
  1568.  
  1569.         move.l d4,d0        
  1570.  
  1571.     or.l d5,d3
  1572.  
  1573.         move.l d6,d1
  1574.  
  1575.  
  1576.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  1577.  
  1578.  
  1579.  
  1580.     and.l d2,d0
  1581.     and.l d2,d1
  1582.  
  1583.     eor.l d0,d4
  1584.     eor.l d1,d6
  1585.  
  1586.     lsr.l #8,d1
  1587.     or.l d1,d0        ; d0 = A1a2c1c2
  1588.  
  1589.     move.l d0,(a2)+        
  1590.  
  1591.     lsl.l #8,d4
  1592.     or.l d6,d4
  1593.  
  1594.     move.l d4,(a2)+
  1595.     
  1596.  
  1597.     dbf d7,Pllb_C2p_Delta_8bit_1Meg_1by1_LP
  1598.  
  1599.     rts
  1600.  
  1601.  
  1602. Pllb_C2p_Delta_8bit_1meg_1by1_APEND:
  1603.  
  1604.  
  1605.  
  1606.  
  1607.  
  1608.  
  1609. ;    -    -    -    -    -    -    -    -    -
  1610.  
  1611. ;              >> DELTA 256 colour Pllb-C2P <<
  1612.  
  1613. ;                Single pixel Width
  1614.  
  1615. ;               1.5meg fastram version
  1616.  
  1617. ;    -    -    -    -    -    -    -    -    -
  1618.  
  1619.  
  1620.  
  1621. Pllb_C2p_Delta_8bit_1_5Meg_1by1:
  1622.  
  1623.     bsr Pllb_c2p_init_DELTA_c2p_registers
  1624.  
  1625.     ; a6 not USED!
  1626.  
  1627.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  1628.  
  1629.  
  1630. Pllb_C2p_Delta_8bit_1_5Meg_1by1_AP:
  1631.  
  1632. Pllb_C2p_Delta_8bit_1_5Meg_1by1_LP:
  1633.  
  1634.     move.l (a0)+,d4
  1635.     move.l (a0)+,d5
  1636.     move.l (a0)+,d6
  1637.     move.l (a0)+,d0
  1638.  
  1639.  
  1640.     cmp.l (a1)+,d4
  1641.     bne.b Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont4
  1642.  
  1643.     cmp.l (a1)+,d5
  1644.     bne.b Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont3
  1645.  
  1646.     cmp.l (a1)+,d6
  1647.     bne.b Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont2
  1648.  
  1649.     cmp.l (a1)+,d0
  1650.     bne.b Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont1
  1651.  
  1652.         add.w #16,a2
  1653.  
  1654.         dbf d7,Pllb_C2p_Delta_8bit_1_5Meg_1by1_LP
  1655.  
  1656.     rts
  1657.     nop
  1658.  
  1659.  
  1660. Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont4:
  1661.  
  1662.     addq.l #4,a1
  1663.  
  1664. Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont3:
  1665.  
  1666.     addq.l #4,a1
  1667.  
  1668. Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont2:
  1669.  
  1670.     addq.l #4,a1
  1671.  
  1672. Pllb_C2p_Delta_8bit_1_5Meg_1by1_cont1:
  1673.  
  1674.     ; d0 = bytes ABCD
  1675.  
  1676.     clr.l d1
  1677.     move.w d4,d1    
  1678.     clr.w d4
  1679.     swap d4
  1680.     lsl.l #3,d4
  1681.  
  1682.     move.l (a5,d4),d3
  1683.     move.l 4(a5,d4),d4
  1684.         lsl.l #2,d3
  1685.         lsl.l #2,d4
  1686.  
  1687.  
  1688.     lsl.l #3,d1
  1689.     or.l (a5,d1),d3
  1690.     or.l 4(a5,d1),d4
  1691.  
  1692.     clr.l d1
  1693.  
  1694.     move.w d5,d1    
  1695.     clr.w d5
  1696.     swap d5
  1697.     lsl.l #3,d5
  1698.     or.l (a4,d5),d3
  1699.     or.l 4(a4,d5),d4
  1700.  
  1701.     lsl.l #3,d1
  1702.     or.l (a3,d1),d3
  1703.     or.l 4(a3,d1),d4
  1704.  
  1705.  
  1706.     clr.l d1
  1707.     move.w d6,d1    
  1708.     clr.w d6
  1709.     swap d6
  1710.     lsl.l #3,d6
  1711.  
  1712.     move.l (a5,d6),d5
  1713.     move.l 4(a5,d6),d6
  1714.         lsl.l #2,d5
  1715.         lsl.l #2,d6
  1716.  
  1717.     lsl.l #3,d1
  1718.     or.l (a5,d1),d5
  1719.     or.l 4(a5,d1),d6
  1720.  
  1721.     clr.l d1
  1722.     move.w d0,d1    
  1723.     clr.w d0
  1724.     swap d0
  1725.     lsl.l #3,d0
  1726.  
  1727.     or.l (a4,d0),d5
  1728.     or.l 4(a4,d0),d6
  1729.  
  1730.     lsl.l #3,d1
  1731.     or.l (a3,d1),d5
  1732.     or.l 4(a3,d1),d6
  1733.  
  1734.  
  1735.  
  1736.     move.l d3,d0        
  1737.     move.l d5,d1
  1738.  
  1739.     and.l d2,d0
  1740.     and.l d2,d1
  1741.  
  1742.     eor.l d0,d3
  1743.     eor.l d1,d5
  1744.  
  1745.     lsr.l #8,d1
  1746.     or.l d1,d0        ; d0 = A1a2c1c2
  1747.  
  1748.     move.l d0,(a2)+        
  1749.  
  1750.     lsl.l #8,d3
  1751.  
  1752.         move.l d4,d0        
  1753.  
  1754.     or.l d5,d3
  1755.  
  1756.         move.l d6,d1
  1757.  
  1758.  
  1759.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  1760.  
  1761.  
  1762.  
  1763.     and.l d2,d0
  1764.     and.l d2,d1
  1765.  
  1766.     eor.l d0,d4
  1767.     eor.l d1,d6
  1768.  
  1769.     lsr.l #8,d1
  1770.     or.l d1,d0        ; d0 = A1a2c1c2
  1771.  
  1772.     move.l d0,(a2)+        
  1773.  
  1774.     lsl.l #8,d4
  1775.     or.l d6,d4
  1776.  
  1777.     move.l d4,(a2)+
  1778.     
  1779.  
  1780.     dbf d7,Pllb_C2p_Delta_8bit_1_5Meg_1by1_LP
  1781.  
  1782.     rts
  1783.  
  1784.  
  1785. Pllb_C2p_Delta_8bit_1_5meg_1by1_APEND:
  1786.  
  1787.  
  1788.  
  1789.  
  1790.  
  1791.  
  1792.  
  1793. ;    -    -    -    -    -    -    -    -    -
  1794.  
  1795. ;              >> DELTA 256 colour Pllb-C2P <<
  1796.  
  1797. ;                Single pixel Width
  1798.  
  1799. ;               2Meg fastram version
  1800.  
  1801. ;    -    -    -    -    -    -    -    -    -
  1802.  
  1803.  
  1804.  
  1805. Pllb_C2p_Delta_8bit_2meg_1by1:
  1806.  
  1807.     bsr Pllb_c2p_init_DELTA_c2p_registers
  1808.  
  1809.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  1810.  
  1811.  
  1812. Pllb_C2p_Delta_8bit_2meg_1by1_AP:
  1813.  
  1814. Pllb_C2p_Delta_8bit_2meg_1by1_LP:
  1815.  
  1816.     move.l (a0)+,d4
  1817.     move.l (a0)+,d5
  1818.     move.l (a0)+,d6
  1819.     move.l (a0)+,d0
  1820.  
  1821.  
  1822.     cmp.l (a1)+,d4
  1823.     bne.b Pllb_C2p_Delta_8bit_2meg_1by1_cont4
  1824.  
  1825.     cmp.l (a1)+,d5
  1826.     bne.b Pllb_C2p_Delta_8bit_2meg_1by1_cont3
  1827.  
  1828.     cmp.l (a1)+,d6
  1829.     bne.b Pllb_C2p_Delta_8bit_2meg_1by1_cont2
  1830.  
  1831.     cmp.l (a1)+,d0
  1832.     bne.b Pllb_C2p_Delta_8bit_2meg_1by1_cont1
  1833.  
  1834.         add.w #16,a2
  1835.  
  1836.         dbf d7,Pllb_C2p_Delta_8bit_2meg_1by1_LP
  1837.  
  1838.     rts
  1839.     nop
  1840.  
  1841.  
  1842. Pllb_C2p_Delta_8bit_2meg_1by1_cont4:
  1843.  
  1844.     addq.l #4,a1
  1845.  
  1846. Pllb_C2p_Delta_8bit_2meg_1by1_cont3:
  1847.  
  1848.     addq.l #4,a1
  1849.  
  1850. Pllb_C2p_Delta_8bit_2meg_1by1_cont2:
  1851.  
  1852.     addq.l #4,a1
  1853.  
  1854. Pllb_C2p_Delta_8bit_2meg_1by1_cont1:
  1855.  
  1856.  
  1857.     clr.l d1
  1858.     move.w d4,d1    
  1859.     clr.w d4
  1860.     swap d4
  1861.     lsl.l #3,d4
  1862.  
  1863.     move.l (a6,d4),d3
  1864.     move.l 4(a6,d4),d4
  1865.  
  1866.     lsl.l #3,d1
  1867.     or.l (a5,d1),d3
  1868.     or.l 4(a5,d1),d4
  1869.  
  1870.     clr.l d1
  1871.  
  1872.  
  1873.     move.w d5,d1    
  1874.     clr.w d5
  1875.     swap d5
  1876.     lsl.l #3,d5
  1877.     or.l (a4,d5),d3
  1878.     or.l 4(a4,d5),d4
  1879.  
  1880.     lsl.l #3,d1
  1881.     or.l (a3,d1),d3
  1882.     or.l 4(a3,d1),d4
  1883.  
  1884.     clr.l d1
  1885.  
  1886.     move.w d6,d1    
  1887.     clr.w d6
  1888.     swap d6
  1889.     lsl.l #3,d6
  1890.  
  1891.     move.l (a6,d6),d5
  1892.     move.l 4(a6,d6),d6
  1893.  
  1894.     lsl.l #3,d1
  1895.     or.l (a5,d1),d5
  1896.     or.l 4(a5,d1),d6
  1897.  
  1898.     clr.l d1
  1899.     move.w d0,d1    
  1900.     clr.w d0
  1901.     swap d0
  1902.     lsl.l #3,d0
  1903.  
  1904.     or.l (a4,d0),d5
  1905.     or.l 4(a4,d0),d6
  1906.  
  1907.     lsl.l #3,d1
  1908.     or.l (a3,d1),d5
  1909.     or.l 4(a3,d1),d6
  1910.  
  1911.  
  1912.     move.l d3,d0        
  1913.     move.l d5,d1
  1914.  
  1915.     and.l d2,d0
  1916.     and.l d2,d1
  1917.  
  1918.     eor.l d0,d3
  1919.     eor.l d1,d5
  1920.  
  1921.     lsr.l #8,d1
  1922.     or.l d1,d0        ; d0 = A1a2c1c2
  1923.  
  1924.     move.l d0,(a2)+        
  1925.  
  1926.     lsl.l #8,d3
  1927.  
  1928.         move.l d4,d0        
  1929.  
  1930.     or.l d5,d3
  1931.  
  1932.         move.l d6,d1
  1933.  
  1934.  
  1935.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  1936.  
  1937.  
  1938.  
  1939.     and.l d2,d0
  1940.     and.l d2,d1
  1941.  
  1942.     eor.l d0,d4
  1943.     eor.l d1,d6
  1944.  
  1945.     lsr.l #8,d1
  1946.     or.l d1,d0        ; d0 = A1a2c1c2
  1947.  
  1948.     move.l d0,(a2)+        
  1949.  
  1950.     lsl.l #8,d4
  1951.     or.l d6,d4
  1952.  
  1953.     move.l d4,(a2)+
  1954.     
  1955.  
  1956.     dbf d7,Pllb_C2p_Delta_8bit_2meg_1by1_LP
  1957.  
  1958.     rts
  1959.  
  1960.  
  1961. Pllb_C2p_Delta_8bit_2meg_1by1_APEND:
  1962.  
  1963.  
  1964.  
  1965.  
  1966. ;    -    -    -    -    -    -    -    -    -
  1967.  
  1968. ;            >> NULLSKIP/CLEAR 256 colour Pllb-C2P <<
  1969.  
  1970. ;                Single pixel Width
  1971.  
  1972. ;               512k fastram version
  1973.  
  1974. ;    -    -    -    -    -    -    -    -    -
  1975.  
  1976.  
  1977. Pllb_C2p_NullSkip_8bit_512k_1by1:
  1978.  
  1979.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  1980.  
  1981.     ; a4,a5,d6 tables are NOT USED
  1982.  
  1983.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  1984.  
  1985.  
  1986. Pllb_C2p_NullSkip_8bit_512k_1by1_AP:
  1987.  
  1988. Pllb_C2p_NullSkip_8bit_512k_1by1_LP:
  1989.  
  1990.     move.l (a0)+,d4
  1991.     bne.b Pllb_C2p_NullSkip_8bit_512k_1by1_Cont4
  1992.     move.l (a0)+,d5
  1993.     bne.b Pllb_C2p_NullSkip_8bit_512k_1by1_Cont3
  1994.     move.l (a0)+,d6
  1995.     bne.b Pllb_C2p_NullSkip_8bit_512k_1by1_Cont2
  1996.     move.l (a0)+,d0
  1997.     bne.b Pllb_C2p_NullSkip_8bit_512k_1by1_Cont1
  1998.  
  1999.         clr.l (a2)+
  2000.         add.w #16,a1
  2001.         clr.l (a2)+
  2002.         clr.l (a2)+
  2003.         clr.l (a2)+
  2004.         
  2005.         dbf d7,Pllb_C2p_NullSkip_8bit_512k_1by1_LP
  2006.  
  2007.     rts
  2008.     nop
  2009.  
  2010.  
  2011. Pllb_C2p_NullSkip_8bit_512k_1by1_Cont4:
  2012.  
  2013.     move.l (a0)+,d5
  2014.  
  2015. Pllb_C2p_NullSkip_8bit_512k_1by1_Cont3:
  2016.  
  2017.     move.l (a0)+,d6
  2018.  
  2019. Pllb_C2p_NullSkip_8bit_512k_1by1_Cont2:
  2020.  
  2021.     move.l (a0)+,d0
  2022.  
  2023. Pllb_C2p_NullSkip_8bit_512k_1by1_Cont1:
  2024.  
  2025.         clr.l (a1)+        ; clear 4 chunky source pixels
  2026.  
  2027.     clr.l d1
  2028.     move.w d4,d1    
  2029.     clr.w d4
  2030.     swap d4
  2031.     lsl.l #3,d4
  2032.     lsl.l #3,d1
  2033.  
  2034.     move.l (a3,d4),d3
  2035.     move.l 4(a3,d4),d4
  2036.         lsl.l #2,d3
  2037.         lsl.l #2,d4
  2038.     or.l (a3,d1),d3
  2039.     or.l 4(a3,d1),d4
  2040.         lsl.l #2,d3
  2041.         lsl.l #2,d4
  2042.  
  2043.  
  2044.     clr.l d1
  2045.     move.w d5,d1    
  2046.     clr.w d5
  2047.     swap d5
  2048.     lsl.l #3,d5
  2049.     lsl.l #3,d1
  2050.     or.l (a3,d5),d3
  2051.     or.l 4(a3,d5),d4
  2052.         lsl.l #2,d3
  2053.         lsl.l #2,d4
  2054.     or.l (a3,d1),d3
  2055.     or.l 4(a3,d1),d4
  2056.  
  2057.  
  2058.         clr.l (a1)+        ; clear 4 chunky source pixels
  2059.  
  2060.     clr.l d1
  2061.  
  2062.     move.w d6,d1    
  2063.     clr.w d6
  2064.     swap d6
  2065.     lsl.l #3,d6
  2066.  
  2067.     move.l (a3,d6),d5
  2068.     move.l 4(a3,d6),d6
  2069.         lsl.l #2,d5
  2070.         lsl.l #2,d6
  2071.  
  2072.  
  2073.     lsl.l #3,d1
  2074.     or.l (a3,d1),d5
  2075.     or.l 4(a3,d1),d6
  2076.         lsl.l #2,d5
  2077.         lsl.l #2,d6
  2078.  
  2079.  
  2080.         clr.l (a1)+        ; clear 4 chunky source pixels
  2081.  
  2082.     clr.l d1
  2083.     move.w d0,d1    
  2084.     clr.w d0
  2085.     swap d0
  2086.     lsl.l #3,d0
  2087.  
  2088.     lsl.l #3,d1
  2089.  
  2090.     or.l (a3,d0),d5
  2091.     or.l 4(a3,d0),d6
  2092.  
  2093.         lsl.l #2,d5
  2094.         lsl.l #2,d6
  2095.  
  2096.     or.l (a3,d1),d5
  2097.     or.l 4(a3,d1),d6
  2098.  
  2099.         clr.l (a1)+        ; clear 4 chunky source pixels
  2100.  
  2101.     move.l d3,d0        
  2102.     move.l d5,d1
  2103.  
  2104.     and.l d2,d0
  2105.     and.l d2,d1
  2106.  
  2107.     eor.l d0,d3
  2108.     eor.l d1,d5
  2109.  
  2110.     lsr.l #8,d1
  2111.     or.l d1,d0        ; d0 = A1a2c1c2
  2112.  
  2113.     move.l d0,(a2)+        
  2114.  
  2115.     lsl.l #8,d3
  2116.  
  2117.         move.l d4,d0        
  2118.  
  2119.     or.l d5,d3
  2120.  
  2121.         move.l d6,d1
  2122.  
  2123.  
  2124.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  2125.  
  2126.     and.l d2,d0
  2127.     and.l d2,d1
  2128.  
  2129.     eor.l d0,d4
  2130.     eor.l d1,d6
  2131.  
  2132.     lsr.l #8,d1
  2133.     or.l d1,d0        ; d0 = A1a2c1c2
  2134.  
  2135.     move.l d0,(a2)+        
  2136.  
  2137.     lsl.l #8,d4
  2138.     or.l d6,d4
  2139.  
  2140.     move.l d4,(a2)+
  2141.     
  2142.     dbf d7,Pllb_C2p_NullSkip_8bit_512k_1by1_LP
  2143.  
  2144.     rts
  2145.  
  2146.  
  2147. Pllb_C2p_NullSkip_8bit_512k_1by1_APEND:
  2148.  
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.  
  2156. ;    -    -    -    -    -    -    -    -    -
  2157.  
  2158. ;            >> NULLSKIP/CLEAR 256 colour Pllb-C2P <<
  2159.  
  2160. ;                Single pixel Width
  2161.  
  2162. ;               1meg fastram version
  2163.  
  2164. ;    -    -    -    -    -    -    -    -    -
  2165.  
  2166.  
  2167. Pllb_C2p_NullSkip_8bit_1Meg_1by1:
  2168.  
  2169.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  2170.  
  2171.     ; a5,a6     tables not used
  2172.  
  2173.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  2174.  
  2175.  
  2176. Pllb_C2p_NullSkip_8bit_1Meg_1by1_AP:
  2177.  
  2178.  
  2179. Pllb_C2p_NullSkip_8bit_1Meg_1by1_LP:
  2180.  
  2181.     move.l (a0)+,d4
  2182.     bne.b Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont4
  2183.     move.l (a0)+,d5
  2184.     bne.b Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont3
  2185.     move.l (a0)+,d6
  2186.     bne.b Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont2
  2187.     move.l (a0)+,d0
  2188.     bne.b Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont1
  2189.  
  2190.         clr.l (a2)+
  2191.         add.w #16,a1
  2192.         clr.l (a2)+
  2193.         clr.l (a2)+
  2194.         clr.l (a2)+
  2195.         
  2196.         dbf d7,Pllb_C2p_NullSkip_8bit_1Meg_1by1_LP
  2197.  
  2198.     rts
  2199.     nop
  2200.  
  2201.  
  2202. Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont4:
  2203.  
  2204.     move.l (a0)+,d5
  2205.  
  2206. Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont3:
  2207.  
  2208.     move.l (a0)+,d6
  2209.  
  2210. Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont2:
  2211.  
  2212.     move.l (a0)+,d0
  2213.  
  2214. Pllb_C2p_NullSkip_8bit_1Meg_1by1_Cont1:
  2215.  
  2216.  
  2217.         clr.l (a1)+        ; clear 4 chunky source pixels
  2218.  
  2219.     clr.l d1
  2220.     move.w d4,d1    
  2221.     clr.w d4
  2222.     swap d4
  2223.  
  2224.     ; d0 = bytes ABCD
  2225.  
  2226.     lsl.l #3,d4
  2227.     lsl.l #3,d1
  2228.     move.l (a4,d4),d3
  2229.     move.l 4(a4,d4),d4
  2230.         lsl.l #2,d3
  2231.         lsl.l #2,d4
  2232.  
  2233.  
  2234.     or.l (a4,d1),d3
  2235.     or.l 4(a4,d1),d4
  2236.         lsl.l #2,d3
  2237.         lsl.l #2,d4
  2238.  
  2239.  
  2240.     clr.l d1
  2241.     move.w d5,d1    
  2242.     clr.w d5
  2243.     swap d5
  2244.     lsl.l #3,d5
  2245.     lsl.l #3,d1
  2246.  
  2247.     or.l (a4,d5),d3
  2248.     or.l 4(a4,d5),d4
  2249.  
  2250.     or.l (a3,d1),d3
  2251.     or.l 4(a3,d1),d4
  2252.  
  2253.         clr.l (a1)+        ; clear 4 chunky source pixels
  2254.  
  2255.     clr.l d1
  2256.     move.w d6,d1    
  2257.     clr.w d6
  2258.     swap d6
  2259.     lsl.l #3,d6
  2260.     lsl.l #3,d1
  2261.  
  2262.     move.l (a4,d6),d5
  2263.     move.l 4(a4,d6),d6
  2264.         lsl.l #2,d5
  2265.         lsl.l #2,d6
  2266.  
  2267.  
  2268.     or.l (a4,d1),d5
  2269.     or.l 4(a4,d1),d6
  2270.         lsl.l #2,d5
  2271.         lsl.l #2,d6
  2272.  
  2273.  
  2274.         clr.l (a1)+        ; clear 4 chunky source pixels
  2275.  
  2276.     clr.l d1
  2277.     move.w d0,d1    
  2278.     clr.w d0
  2279.     swap d0
  2280.     lsl.l #3,d0
  2281.     lsl.l #3,d1
  2282.  
  2283.     or.l (a4,d0),d5
  2284.     or.l 4(a4,d0),d6
  2285.  
  2286.     or.l (a3,d1),d5
  2287.     or.l 4(a3,d1),d6
  2288.  
  2289.         clr.l (a1)+        ; clear 4 chunky source pixels
  2290.  
  2291.  
  2292.     move.l d3,d0        
  2293.     move.l d5,d1
  2294.  
  2295.     and.l d2,d0
  2296.     and.l d2,d1
  2297.  
  2298.     eor.l d0,d3
  2299.     eor.l d1,d5
  2300.  
  2301.     lsr.l #8,d1
  2302.     or.l d1,d0        ; d0 = A1a2c1c2
  2303.  
  2304.     move.l d0,(a2)+        
  2305.  
  2306.     lsl.l #8,d3
  2307.  
  2308.         move.l d4,d0        
  2309.  
  2310.     or.l d5,d3
  2311.  
  2312.         move.l d6,d1
  2313.  
  2314.  
  2315.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  2316.  
  2317.  
  2318.  
  2319.     and.l d2,d0
  2320.     and.l d2,d1
  2321.  
  2322.     eor.l d0,d4
  2323.     eor.l d1,d6
  2324.  
  2325.     lsr.l #8,d1
  2326.     or.l d1,d0        ; d0 = A1a2c1c2
  2327.  
  2328.     move.l d0,(a2)+        
  2329.  
  2330.     lsl.l #8,d4
  2331.     or.l d6,d4
  2332.  
  2333.     move.l d4,(a2)+
  2334.     
  2335.     dbf d7,Pllb_C2p_NullSkip_8bit_1Meg_1by1_LP
  2336.  
  2337.     rts
  2338.  
  2339.  
  2340. Pllb_C2p_NullSkip_8bit_1meg_1by1_APEND:
  2341.  
  2342.  
  2343.  
  2344.  
  2345.  
  2346.  
  2347. ;    -    -    -    -    -    -    -    -    -
  2348.  
  2349. ;            >> NULLSKIP/CLEAR 256 colour Pllb-C2P <<
  2350.  
  2351. ;                Single pixel Width
  2352.  
  2353. ;               1.5meg fastram version
  2354.  
  2355. ;    -    -    -    -    -    -    -    -    -
  2356.  
  2357.  
  2358. Pllb_C2p_NullSkip_8bit_1_5Meg_1by1:
  2359.  
  2360.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  2361.  
  2362.     ; a6 not used
  2363.  
  2364.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  2365.  
  2366.  
  2367. Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_AP:
  2368.  
  2369.  
  2370. Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_LP:
  2371.  
  2372.     move.l (a0)+,d4
  2373.     bne.b Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont4
  2374.     move.l (a0)+,d5
  2375.     bne.b Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont3
  2376.     move.l (a0)+,d6
  2377.     bne.b Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont2
  2378.     move.l (a0)+,d0
  2379.     bne.b Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont1
  2380.  
  2381.         clr.l (a2)+
  2382.         add.w #16,a1
  2383.         clr.l (a2)+
  2384.         clr.l (a2)+
  2385.         clr.l (a2)+
  2386.         
  2387.         dbf d7,Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_LP
  2388.  
  2389.     rts
  2390.     nop
  2391.  
  2392.  
  2393. Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont4:
  2394.  
  2395.     move.l (a0)+,d5
  2396.  
  2397. Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont3:
  2398.  
  2399.     move.l (a0)+,d6
  2400.  
  2401. Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont2:
  2402.  
  2403.     move.l (a0)+,d0
  2404.  
  2405. Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_Cont1:
  2406.  
  2407.  
  2408.         clr.l (a1)+        ; clear 4 chunky source pixels
  2409.  
  2410.     clr.l d1
  2411.     move.w d4,d1    
  2412.     clr.w d4
  2413.     swap d4
  2414.  
  2415.     lsl.l #3,d4
  2416.  
  2417.  
  2418.     move.l (a5,d4),d3
  2419.     move.l 4(a5,d4),d4
  2420.         lsl.l #2,d3
  2421.         lsl.l #2,d4
  2422.  
  2423.  
  2424.     lsl.l #3,d1
  2425.     or.l (a5,d1),d3
  2426.     or.l 4(a5,d1),d4
  2427.  
  2428.     clr.l d1
  2429.     move.w d5,d1    
  2430.     clr.w d5
  2431.     swap d5
  2432.     lsl.l #3,d5
  2433.     or.l (a4,d5),d3
  2434.     or.l 4(a4,d5),d4
  2435.  
  2436.     lsl.l #3,d1
  2437.     or.l (a3,d1),d3
  2438.     or.l 4(a3,d1),d4
  2439.  
  2440.         clr.l (a1)+        ; clear 4 chunky source pixels
  2441.  
  2442.     clr.l d1
  2443.  
  2444.     move.w d6,d1    
  2445.     clr.w d6
  2446.     swap d6
  2447.     lsl.l #3,d6
  2448.  
  2449.     move.l (a5,d6),d5
  2450.     move.l 4(a5,d6),d6
  2451.         lsl.l #2,d5
  2452.         lsl.l #2,d6
  2453.  
  2454.  
  2455.     lsl.l #3,d1
  2456.     or.l (a5,d1),d5
  2457.     or.l 4(a5,d1),d6
  2458.  
  2459.         clr.l (a1)+        ; clear 4 chunky source pixels
  2460.  
  2461.  
  2462.  
  2463.     clr.l d1
  2464.     move.w d0,d1    
  2465.     clr.w d0
  2466.     swap d0
  2467.     lsl.l #3,d0
  2468.  
  2469.     or.l (a4,d0),d5
  2470.     or.l 4(a4,d0),d6
  2471.     lsl.l #3,d1
  2472.     or.l (a3,d1),d5
  2473.     or.l 4(a3,d1),d6
  2474.  
  2475.         clr.l (a1)+        ; clear 4 chunky source pixels
  2476.  
  2477.     move.l d3,d0        
  2478.     move.l d5,d1
  2479.  
  2480.     and.l d2,d0
  2481.     and.l d2,d1
  2482.  
  2483.     eor.l d0,d3
  2484.     eor.l d1,d5
  2485.  
  2486.     lsr.l #8,d1
  2487.     or.l d1,d0        ; d0 = A1a2c1c2
  2488.  
  2489.     move.l d0,(a2)+        
  2490.  
  2491.     lsl.l #8,d3
  2492.  
  2493.         move.l d4,d0        
  2494.  
  2495.     or.l d5,d3
  2496.  
  2497.         move.l d6,d1
  2498.  
  2499.  
  2500.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  2501.  
  2502.  
  2503.  
  2504.     and.l d2,d0
  2505.     and.l d2,d1
  2506.  
  2507.     eor.l d0,d4
  2508.     eor.l d1,d6
  2509.  
  2510.     lsr.l #8,d1
  2511.     or.l d1,d0        ; d0 = A1a2c1c2
  2512.  
  2513.     move.l d0,(a2)+        
  2514.  
  2515.     lsl.l #8,d4
  2516.     or.l d6,d4
  2517.  
  2518.     move.l d4,(a2)+
  2519.     
  2520.     dbf d7,Pllb_C2p_NullSkip_8bit_1_5Meg_1by1_LP
  2521.  
  2522.     rts
  2523.  
  2524.  
  2525. Pllb_C2p_NullSkip_8bit_1_5meg_1by1_APEND:
  2526.  
  2527.  
  2528.  
  2529.  
  2530.  
  2531. ;    -    -    -    -    -    -    -    -    -
  2532.  
  2533. ;            >> NULLSKIP/CLEAR 256 colour Pllb-C2P <<
  2534.  
  2535. ;                Single pixel Width
  2536.  
  2537. ;               2meg fastram version
  2538.  
  2539. ;    -    -    -    -    -    -    -    -    -
  2540.  
  2541.  
  2542. Pllb_C2p_NullSkip_8bit_2meg_1by1:
  2543.  
  2544.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  2545.  
  2546.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  2547.  
  2548.  
  2549. Pllb_C2p_NullSkip_8bit_2meg_1by1_AP:
  2550.  
  2551.  
  2552. Pllb_C2p_NullSkip_8bit_2meg_1by1_LP:
  2553.  
  2554.     move.l (a0)+,d4
  2555.     bne.b Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont4
  2556.     move.l (a0)+,d5
  2557.     bne.b Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont3
  2558.     move.l (a0)+,d6
  2559.     bne.b Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont2
  2560.     move.l (a0)+,d0
  2561.     bne.b Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont1
  2562.  
  2563.         clr.l (a2)+
  2564.         add.w #16,a1
  2565.         clr.l (a2)+
  2566.         clr.l (a2)+
  2567.         clr.l (a2)+
  2568.         
  2569.         dbf d7,Pllb_C2p_NullSkip_8bit_2meg_1by1_LP
  2570.  
  2571.     rts
  2572.     nop
  2573.  
  2574.  
  2575. Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont4:
  2576.  
  2577.     move.l (a0)+,d5
  2578.  
  2579. Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont3:
  2580.  
  2581.     move.l (a0)+,d6
  2582.  
  2583. Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont2:
  2584.  
  2585.     move.l (a0)+,d0
  2586.  
  2587. Pllb_C2p_NullSkip_8bit_2meg_1by1_Cont1:
  2588.  
  2589.  
  2590.         clr.l (a1)+        ; clear 4 chunky source pixels
  2591.  
  2592.     clr.l d1
  2593.     move.w d4,d1    
  2594.     clr.w d4
  2595.     swap d4
  2596.  
  2597.     lsl.l #3,d4
  2598.  
  2599.     move.l (a6,d4),d3
  2600.     move.l 4(a6,d4),d4
  2601.  
  2602.     lsl.l #3,d1
  2603.     or.l (a5,d1),d3
  2604.     or.l 4(a5,d1),d4
  2605.  
  2606.     clr.l d1
  2607.     move.w d5,d1    
  2608.     clr.w d5
  2609.     swap d5
  2610.     lsl.l #3,d5
  2611.     or.l (a4,d5),d3
  2612.     or.l 4(a4,d5),d4
  2613.  
  2614.     lsl.l #3,d1
  2615.     or.l (a3,d1),d3
  2616.     or.l 4(a3,d1),d4
  2617.  
  2618.         clr.l (a1)+        ; clear 4 chunky source pixels
  2619.  
  2620.     clr.l d1
  2621.  
  2622.     move.w d6,d1    
  2623.     clr.w d6
  2624.     swap d6
  2625.     lsl.l #3,d6
  2626.  
  2627.     move.l (a6,d6),d5
  2628.     move.l 4(a6,d6),d6
  2629.  
  2630.     lsl.l #3,d1
  2631.     or.l (a5,d1),d5
  2632.     or.l 4(a5,d1),d6
  2633.  
  2634.         clr.l (a1)+        ; clear 4 chunky source pixels
  2635.  
  2636.  
  2637.  
  2638.     clr.l d1
  2639.     move.w d0,d1    
  2640.     clr.w d0
  2641.     swap d0
  2642.     lsl.l #3,d0
  2643.  
  2644.     or.l (a4,d0),d5
  2645.     or.l 4(a4,d0),d6
  2646.  
  2647.     lsl.l #3,d1
  2648.     or.l (a3,d1),d5
  2649.     or.l 4(a3,d1),d6
  2650.  
  2651.         clr.l (a1)+        ; clear 4 chunky source pixels
  2652.  
  2653.     move.l d3,d0        
  2654.     move.l d5,d1
  2655.  
  2656.     and.l d2,d0
  2657.     and.l d2,d1
  2658.  
  2659.     eor.l d0,d3
  2660.     eor.l d1,d5
  2661.  
  2662.     lsr.l #8,d1
  2663.     or.l d1,d0        ; d0 = A1a2c1c2
  2664.  
  2665.     move.l d0,(a2)+        
  2666.  
  2667.     lsl.l #8,d3
  2668.  
  2669.         move.l d4,d0        
  2670.  
  2671.     or.l d5,d3
  2672.  
  2673.         move.l d6,d1
  2674.  
  2675.  
  2676.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  2677.  
  2678.  
  2679.  
  2680.     and.l d2,d0
  2681.     and.l d2,d1
  2682.  
  2683.     eor.l d0,d4
  2684.     eor.l d1,d6
  2685.  
  2686.     lsr.l #8,d1
  2687.     or.l d1,d0        ; d0 = A1a2c1c2
  2688.  
  2689.     move.l d0,(a2)+        
  2690.  
  2691.     lsl.l #8,d4
  2692.     or.l d6,d4
  2693.  
  2694.     move.l d4,(a2)+
  2695.     
  2696.     dbf d7,Pllb_C2p_NullSkip_8bit_2meg_1by1_LP
  2697.  
  2698.     rts
  2699.  
  2700.  
  2701. Pllb_C2p_NullSkip_8bit_2meg_1by1_APEND:
  2702.  
  2703.  
  2704.  
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710. ;    -    -    -    -    -    -    -    -    -
  2711.  
  2712. ;        >> DELTANULLSKIP/CLEAR 256 colour Pllb-C2P <<
  2713.  
  2714. ;                Single pixel Width
  2715.  
  2716. ;               512k fastram version
  2717.  
  2718. ;    -    -    -    -    -    -    -    -    -
  2719.  
  2720.  
  2721. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1:
  2722.  
  2723.     bsr Pllb_c2p_init_DELTANULLSKIP_c2p_registers
  2724.  
  2725.  
  2726.     ; a4,a5 tables are NOT USED
  2727.  
  2728.  
  2729.  
  2730.     move.l #16,a5
  2731.  
  2732.     ; a6 = pointer to the second Frame Buffer.
  2733.  
  2734.  
  2735.  
  2736.  
  2737.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  2738.  
  2739.  
  2740. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_AP:
  2741.  
  2742. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_LP:
  2743.  
  2744.     move.l (a0)+,d4
  2745.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont4
  2746.     move.l (a0)+,d5
  2747.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont3
  2748.     move.l (a0)+,d6
  2749.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont2
  2750.     move.l (a0)+,d0
  2751.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont1
  2752.  
  2753.     tst.b (a6)
  2754.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_nodelta
  2755.  
  2756.         add.l a5,a2
  2757.  
  2758.         addq.l #1,a6
  2759.         
  2760.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_LP
  2761.  
  2762.     rts
  2763.  
  2764.  
  2765. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_nodelta:
  2766.  
  2767.         clr.l (a2)+
  2768.         add.l a5,a1
  2769.         clr.l (a2)+
  2770.         clr.l (a2)+
  2771.         clr.l (a2)+
  2772.  
  2773.         clr.b (a6)+
  2774.         
  2775.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_LP
  2776.  
  2777.     rts
  2778.     nop
  2779.  
  2780.  
  2781. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont4:
  2782.  
  2783.     move.l (a0)+,d5
  2784.  
  2785. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont3:
  2786.  
  2787.     move.l (a0)+,d6
  2788.  
  2789. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont2:
  2790.  
  2791.     move.l (a0)+,d0
  2792.  
  2793. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_Cont1:
  2794.  
  2795.     clr.l (a1)+        ; clear 4 chunky source pixels
  2796.  
  2797.  
  2798.     clr.l d1
  2799.     move.w d4,d1    
  2800.     clr.w d4
  2801.  
  2802.  
  2803.     st.b (a6)+        ; Set DElta nullskip flag for this 16
  2804.                 ; pixels
  2805.     swap d4
  2806.     lsl.l #3,d4
  2807.     lsl.l #3,d1
  2808.  
  2809.     move.l (a3,d4),d3
  2810.     move.l 4(a3,d4),d4
  2811.         lsl.l #2,d3
  2812.         lsl.l #2,d4
  2813.     or.l (a3,d1),d3
  2814.     or.l 4(a3,d1),d4
  2815.         lsl.l #2,d3
  2816.         lsl.l #2,d4
  2817.  
  2818.  
  2819.     clr.l d1
  2820.     move.w d5,d1    
  2821.     clr.w d5
  2822.     swap d5
  2823.     lsl.l #3,d5
  2824.     lsl.l #3,d1
  2825.     or.l (a3,d5),d3
  2826.     or.l 4(a3,d5),d4
  2827.         lsl.l #2,d3
  2828.         lsl.l #2,d4
  2829.     or.l (a3,d1),d3
  2830.     or.l 4(a3,d1),d4
  2831.  
  2832.  
  2833.         clr.l (a1)+        ; clear 4 chunky source pixels
  2834.  
  2835.     clr.l d1
  2836.  
  2837.     move.w d6,d1    
  2838.     clr.w d6
  2839.     swap d6
  2840.     lsl.l #3,d6
  2841.  
  2842.     move.l (a3,d6),d5
  2843.     move.l 4(a3,d6),d6
  2844.         lsl.l #2,d5
  2845.         lsl.l #2,d6
  2846.  
  2847.  
  2848.     lsl.l #3,d1
  2849.     or.l (a3,d1),d5
  2850.     or.l 4(a3,d1),d6
  2851.         lsl.l #2,d5
  2852.         lsl.l #2,d6
  2853.  
  2854.  
  2855.         clr.l (a1)+        ; clear 4 chunky source pixels
  2856.  
  2857.     clr.l d1
  2858.     move.w d0,d1    
  2859.     clr.w d0
  2860.     swap d0
  2861.     lsl.l #3,d0
  2862.  
  2863.     lsl.l #3,d1
  2864.  
  2865.     or.l (a3,d0),d5
  2866.     or.l 4(a3,d0),d6
  2867.  
  2868.         lsl.l #2,d5
  2869.         lsl.l #2,d6
  2870.  
  2871.     or.l (a3,d1),d5
  2872.     or.l 4(a3,d1),d6
  2873.  
  2874.         clr.l (a1)+        ; clear 4 chunky source pixels
  2875.  
  2876.     move.l d3,d0        
  2877.     move.l d5,d1
  2878.  
  2879.     and.l d2,d0
  2880.     and.l d2,d1
  2881.  
  2882.     eor.l d0,d3
  2883.     eor.l d1,d5
  2884.  
  2885.     lsr.l #8,d1
  2886.     or.l d1,d0        ; d0 = A1a2c1c2
  2887.  
  2888.     move.l d0,(a2)+        
  2889.  
  2890.     lsl.l #8,d3
  2891.  
  2892.         move.l d4,d0        
  2893.  
  2894.     or.l d5,d3
  2895.  
  2896.         move.l d6,d1
  2897.  
  2898.  
  2899.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  2900.  
  2901.     and.l d2,d0
  2902.     and.l d2,d1
  2903.  
  2904.     eor.l d0,d4
  2905.     eor.l d1,d6
  2906.  
  2907.     lsr.l #8,d1
  2908.     or.l d1,d0        ; d0 = A1a2c1c2
  2909.  
  2910.     move.l d0,(a2)+        
  2911.  
  2912.     lsl.l #8,d4
  2913.     or.l d6,d4
  2914.  
  2915.     move.l d4,(a2)+
  2916.     
  2917.     dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_LP
  2918.  
  2919.     rts
  2920.  
  2921.  
  2922. Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_APEND:
  2923.  
  2924.  
  2925.  
  2926.  
  2927.  
  2928.  
  2929.  
  2930.  
  2931.  
  2932.  
  2933. ;    -    -    -    -    -    -    -    -    -
  2934.  
  2935. ;            >> DeltaNULLSKIP/CLEAR 256 colour Pllb-C2P <<
  2936.  
  2937. ;                Single pixel Width
  2938.  
  2939. ;               1meg fastram version
  2940.  
  2941. ;    -    -    -    -    -    -    -    -    -
  2942.  
  2943.  
  2944. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1:
  2945.  
  2946.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  2947.  
  2948.     ; a5
  2949.  
  2950.     move.l #16,a5
  2951.  
  2952.     ;a6='s pointer to the Compare cleared buffer
  2953.  
  2954.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  2955.  
  2956.  
  2957. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_AP:
  2958.  
  2959.  
  2960. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_LP:
  2961.  
  2962.     move.l (a0)+,d4
  2963.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont4
  2964.     move.l (a0)+,d5
  2965.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont3
  2966.     move.l (a0)+,d6
  2967.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont2
  2968.     move.l (a0)+,d0
  2969.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont1
  2970.  
  2971.  
  2972.     tst.b (a6)
  2973.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_nodelta
  2974.  
  2975.         add.l a5,a1
  2976.         add.l a5,a2
  2977.  
  2978.         addq.l #1,a6
  2979.         
  2980.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_LP
  2981.  
  2982.     rts
  2983.  
  2984.  
  2985. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_nodelta:
  2986.  
  2987.         clr.l (a2)+
  2988.         add.l a5,a1
  2989.         clr.l (a2)+
  2990.         clr.l (a2)+
  2991.         clr.l (a2)+
  2992.  
  2993.         clr.b (a6)+
  2994.         
  2995.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_LP
  2996.     rts
  2997.     nop
  2998.  
  2999.  
  3000. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont4:
  3001.  
  3002.     move.l (a0)+,d5
  3003.  
  3004. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont3:
  3005.  
  3006.     move.l (a0)+,d6
  3007.  
  3008. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont2:
  3009.  
  3010.     move.l (a0)+,d0
  3011.  
  3012. Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_Cont1:
  3013.  
  3014.  
  3015.         clr.l (a1)+        ; clear 4 chunky source pixels
  3016.  
  3017.     clr.l d1
  3018.     move.w d4,d1    
  3019.     clr.w d4
  3020.  
  3021.         st.b (a6)+
  3022.  
  3023.     swap d4
  3024.  
  3025.     ; d0 = bytes ABCD
  3026.  
  3027.     lsl.l #3,d4
  3028.     lsl.l #3,d1
  3029.     move.l (a4,d4),d3
  3030.     move.l 4(a4,d4),d4
  3031.         lsl.l #2,d3
  3032.         lsl.l #2,d4
  3033.  
  3034.  
  3035.     or.l (a4,d1),d3
  3036.     or.l 4(a4,d1),d4
  3037.         lsl.l #2,d3
  3038.         lsl.l #2,d4
  3039.  
  3040.  
  3041.     clr.l d1
  3042.     move.w d5,d1    
  3043.     clr.w d5
  3044.     swap d5
  3045.     lsl.l #3,d5
  3046.     lsl.l #3,d1
  3047.  
  3048.     or.l (a4,d5),d3
  3049.     or.l 4(a4,d5),d4
  3050.  
  3051.     or.l (a3,d1),d3
  3052.     or.l 4(a3,d1),d4
  3053.  
  3054.         clr.l (a1)+        ; clear 4 chunky source pixels
  3055.  
  3056.     clr.l d1
  3057.     move.w d6,d1    
  3058.     clr.w d6
  3059.     swap d6
  3060.     lsl.l #3,d6
  3061.     lsl.l #3,d1
  3062.  
  3063.     move.l (a4,d6),d5
  3064.     move.l 4(a4,d6),d6
  3065.         lsl.l #2,d5
  3066.         lsl.l #2,d6
  3067.  
  3068.  
  3069.     or.l (a4,d1),d5
  3070.     or.l 4(a4,d1),d6
  3071.         lsl.l #2,d5
  3072.         lsl.l #2,d6
  3073.  
  3074.  
  3075.         clr.l (a1)+        ; clear 4 chunky source pixels
  3076.  
  3077.     clr.l d1
  3078.     move.w d0,d1    
  3079.     clr.w d0
  3080.     swap d0
  3081.     lsl.l #3,d0
  3082.     lsl.l #3,d1
  3083.  
  3084.     or.l (a4,d0),d5
  3085.     or.l 4(a4,d0),d6
  3086.  
  3087.     or.l (a3,d1),d5
  3088.     or.l 4(a3,d1),d6
  3089.  
  3090.         clr.l (a1)+        ; clear 4 chunky source pixels
  3091.  
  3092.  
  3093.     move.l d3,d0        
  3094.     move.l d5,d1
  3095.  
  3096.     and.l d2,d0
  3097.     and.l d2,d1
  3098.  
  3099.     eor.l d0,d3
  3100.     eor.l d1,d5
  3101.  
  3102.     lsr.l #8,d1
  3103.     or.l d1,d0        ; d0 = A1a2c1c2
  3104.  
  3105.     move.l d0,(a2)+        
  3106.  
  3107.     lsl.l #8,d3
  3108.  
  3109.         move.l d4,d0        
  3110.  
  3111.     or.l d5,d3
  3112.  
  3113.         move.l d6,d1
  3114.  
  3115.  
  3116.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  3117.  
  3118.  
  3119.  
  3120.     and.l d2,d0
  3121.     and.l d2,d1
  3122.  
  3123.     eor.l d0,d4
  3124.     eor.l d1,d6
  3125.  
  3126.     lsr.l #8,d1
  3127.     or.l d1,d0        ; d0 = A1a2c1c2
  3128.  
  3129.     move.l d0,(a2)+        
  3130.  
  3131.     lsl.l #8,d4
  3132.     or.l d6,d4
  3133.  
  3134.     move.l d4,(a2)+
  3135.     
  3136.     dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1Meg_1by1_LP
  3137.  
  3138.     rts
  3139.  
  3140.  
  3141. Pllb_C2p_DeltaNullSkip_8bit_1meg_1by1_APEND:
  3142.  
  3143.  
  3144.  
  3145.  
  3146.  
  3147.  
  3148.  
  3149.  
  3150.  
  3151.  
  3152.  
  3153. ;    -    -    -    -    -    -    -    -    -
  3154.  
  3155. ;         >> DELTANULLSKIP/CLEAR 256 colour Pllb-C2P <<
  3156.  
  3157. ;                Single pixel Width
  3158.  
  3159. ;               1.5meg fastram version
  3160.  
  3161. ;    -    -    -    -    -    -    -    -    -
  3162.  
  3163.  
  3164. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1:
  3165.  
  3166.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  3167.  
  3168.     ; a6 not used
  3169.  
  3170.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  3171.  
  3172.  
  3173. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_AP:
  3174.  
  3175.  
  3176. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_LP:
  3177.  
  3178.     move.l (a0)+,d4
  3179.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont4
  3180.     move.l (a0)+,d5
  3181.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont3
  3182.     move.l (a0)+,d6
  3183.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont2
  3184.     move.l (a0)+,d0
  3185.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont1
  3186.  
  3187.  
  3188.     moveq.l #16,d0
  3189.  
  3190.     tst.b (a6)
  3191.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_nodelta
  3192.  
  3193.         add.l d0,a1
  3194.         add.l d0,a2
  3195.  
  3196.         addq.l #1,a6
  3197.         
  3198.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_LP
  3199.  
  3200.     rts
  3201.  
  3202.  
  3203. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_nodelta:
  3204.  
  3205.         clr.l (a2)+
  3206.         add.l d0,a1
  3207.         clr.l (a2)+
  3208.         clr.l (a2)+
  3209.         clr.l (a2)+
  3210.  
  3211.         clr.b (a6)+
  3212.         
  3213.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_LP
  3214.  
  3215.  
  3216.     rts
  3217.     nop
  3218.  
  3219.  
  3220. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont4:
  3221.  
  3222.     move.l (a0)+,d5
  3223.  
  3224. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont3:
  3225.  
  3226.     move.l (a0)+,d6
  3227.  
  3228. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont2:
  3229.  
  3230.     move.l (a0)+,d0
  3231.  
  3232. Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_Cont1:
  3233.  
  3234.  
  3235.         clr.l (a1)+        ; clear 4 chunky source pixels
  3236.  
  3237.     clr.l d1
  3238.     move.w d4,d1    
  3239.     clr.w d4
  3240.  
  3241.  
  3242.         st.b (a6)+
  3243.     swap d4
  3244.     lsl.l #3,d4
  3245.     lsl.l #3,d1
  3246.  
  3247.     move.l (a5,d4),d3
  3248.     move.l 4(a5,d4),d4
  3249.         lsl.l #2,d3
  3250.         lsl.l #2,d4
  3251.  
  3252.  
  3253.     or.l (a5,d1),d3
  3254.     or.l 4(a5,d1),d4
  3255.  
  3256.     clr.l d1
  3257.     move.w d5,d1    
  3258.     clr.w d5
  3259.     swap d5
  3260.     lsl.l #3,d5
  3261.     or.l (a4,d5),d3
  3262.     or.l 4(a4,d5),d4
  3263.  
  3264.     lsl.l #3,d1
  3265.     or.l (a3,d1),d3
  3266.     or.l 4(a3,d1),d4
  3267.  
  3268.         clr.l (a1)+        ; clear 4 chunky source pixels
  3269.  
  3270.     clr.l d1
  3271.  
  3272.     move.w d6,d1    
  3273.     clr.w d6
  3274.     swap d6
  3275.     lsl.l #3,d6
  3276.  
  3277.     move.l (a5,d6),d5
  3278.     move.l 4(a5,d6),d6
  3279.         lsl.l #2,d5
  3280.         lsl.l #2,d6
  3281.  
  3282.  
  3283.     lsl.l #3,d1
  3284.     or.l (a5,d1),d5
  3285.     or.l 4(a5,d1),d6
  3286.  
  3287.         clr.l (a1)+        ; clear 4 chunky source pixels
  3288.  
  3289.  
  3290.  
  3291.     clr.l d1
  3292.     move.w d0,d1    
  3293.     clr.w d0
  3294.     swap d0
  3295.     lsl.l #3,d0
  3296.  
  3297.     or.l (a4,d0),d5
  3298.     or.l 4(a4,d0),d6
  3299.     lsl.l #3,d1
  3300.     or.l (a3,d1),d5
  3301.     or.l 4(a3,d1),d6
  3302.  
  3303.         clr.l (a1)+        ; clear 4 chunky source pixels
  3304.  
  3305.     move.l d3,d0        
  3306.     move.l d5,d1
  3307.  
  3308.     and.l d2,d0
  3309.     and.l d2,d1
  3310.  
  3311.     eor.l d0,d3
  3312.     eor.l d1,d5
  3313.  
  3314.     lsr.l #8,d1
  3315.     or.l d1,d0        ; d0 = A1a2c1c2
  3316.  
  3317.     move.l d0,(a2)+        
  3318.  
  3319.     lsl.l #8,d3
  3320.  
  3321.         move.l d4,d0        
  3322.  
  3323.     or.l d5,d3
  3324.  
  3325.         move.l d6,d1
  3326.  
  3327.  
  3328.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  3329.  
  3330.  
  3331.  
  3332.     and.l d2,d0
  3333.     and.l d2,d1
  3334.  
  3335.     eor.l d0,d4
  3336.     eor.l d1,d6
  3337.  
  3338.     lsr.l #8,d1
  3339.     or.l d1,d0        ; d0 = A1a2c1c2
  3340.  
  3341.     move.l d0,(a2)+        
  3342.  
  3343.     lsl.l #8,d4
  3344.     or.l d6,d4
  3345.  
  3346.     move.l d4,(a2)+
  3347.     
  3348.     dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1_5Meg_1by1_LP
  3349.  
  3350.     rts
  3351.  
  3352.  
  3353. Pllb_C2p_DeltaNullSkip_8bit_1_5meg_1by1_APEND:
  3354.  
  3355.  
  3356.  
  3357.  
  3358.  
  3359.  
  3360.  
  3361.  
  3362.  
  3363.  
  3364.  
  3365. ;    -    -    -    -    -    -    -    -    -
  3366.  
  3367. ;               >> Normal 256 colour Pllb-C2P <<
  3368.  
  3369. ;                Double pixel Width
  3370.  
  3371. ;               512k fastram version
  3372.  
  3373. ;    -    -    -    -    -    -    -    -    -
  3374.  
  3375.  
  3376. Pllb_C2p_8bit_512k_2by1:
  3377.  
  3378.     bsr Pllb_c2p_init_Normal_c2p_registers
  3379.  
  3380.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  3381.  
  3382.  
  3383. Pllb_C2p_8bit_512k_2by1_AP:
  3384.  
  3385.     clr.l d1
  3386.     move.l (a0)+,d0
  3387.     move.w d0,d1    
  3388.     clr.w d0
  3389.     nop
  3390.     nop
  3391.     nop
  3392.     bra.b Pllb_C2p_8bit_512k_2by1_Skip    
  3393.  
  3394. Pllb_C2p_8bit_512k_2by1_lp:
  3395.  
  3396.     
  3397.     clr.l d1
  3398.     move.l (a0)+,d0
  3399.     move.w d0,d1    
  3400.     clr.w d0
  3401.  
  3402.         move.l d4,(a1)+    
  3403.  
  3404. Pllb_C2p_8bit_512k_2by1_Skip:
  3405.  
  3406.  
  3407.     swap d0
  3408.     lsl.l #3,d0
  3409.     lsl.l #3,d1
  3410.  
  3411.     move.l (a3,d0),d3
  3412.     move.l 4(a3,d0),d4
  3413.  
  3414.         lsl.l #4,d3
  3415.         lsl.l #4,d4
  3416.  
  3417.  
  3418.     or.l (a3,d1),d3
  3419.     or.l 4(a3,d1),d4
  3420.  
  3421.  
  3422.     clr.l d1
  3423.     move.l (a0)+,d0
  3424.     move.w d0,d1    
  3425.     clr.w d0
  3426.     swap d0
  3427.  
  3428.     lsl.l #3,d0
  3429.  
  3430.     lsl.l #3,d1
  3431.  
  3432.     move.l (a3,d0),d5
  3433.     move.l 4(a3,d0),d6
  3434.  
  3435.     lsl.l #4,d5
  3436.     lsl.l #4,d6
  3437.  
  3438.     or.l (a3,d1),d5
  3439.     or.l 4(a3,d1),d6
  3440.  
  3441.  
  3442.     move.l d3,d0        
  3443.     move.l d5,d1
  3444.  
  3445.     and.l d2,d0
  3446.     and.l d2,d1
  3447.  
  3448.     eor.l d0,d3
  3449.     eor.l d1,d5
  3450.  
  3451.     lsr.l #8,d1
  3452.     or.l d1,d0        ; d0 = A1a2c1c2
  3453.  
  3454.         move.l d0,(a1)+        
  3455.  
  3456.     lsl.l #8,d3
  3457.  
  3458.         move.l d4,d0        
  3459.  
  3460.     or.l d5,d3
  3461.  
  3462.         move.l d6,d1
  3463.  
  3464.  
  3465.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  3466.  
  3467.  
  3468.     and.l d2,d0
  3469.     and.l d2,d1
  3470.  
  3471.     eor.l d0,d4
  3472.     eor.l d1,d6
  3473.  
  3474.     lsr.l #8,d1
  3475.     or.l d1,d0        ; d0 = A1a2c1c2
  3476.  
  3477.         move.l d0,(a1)+        
  3478.  
  3479.     lsl.l #8,d4
  3480.     or.l d6,d4
  3481.  
  3482.     dbf d7,Pllb_C2p_8bit_512k_2by1_lp
  3483.  
  3484.     move.l d4,(a1)+        ; write outstanding long word
  3485.     rts
  3486.  
  3487.  
  3488. Pllb_C2p_8bit_512k_2by1_APEnd:
  3489.  
  3490.  
  3491.  
  3492.  
  3493.  
  3494.  
  3495.  
  3496.  
  3497.  
  3498.  
  3499.  
  3500. ;    -    -    -    -    -    -    -    -    -
  3501.  
  3502. ;               >> Normal 256 colour Pllb-C2P <<
  3503.  
  3504. ;                Double pixel Width
  3505.  
  3506. ;               1meg fastram version
  3507.  
  3508. ;    -    -    -    -    -    -    -    -    -
  3509.  
  3510.  
  3511. Pllb_C2p_8bit_1meg_2by1:
  3512.  
  3513.     bsr Pllb_c2p_init_Normal_c2p_registers
  3514.  
  3515.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  3516.  
  3517.  
  3518. Pllb_C2p_8bit_1meg_2by1_AP:
  3519.  
  3520.     clr.l d1
  3521.     move.l (a0)+,d0
  3522.     move.w d0,d1    
  3523.     clr.w d0
  3524.     nop
  3525.     nop
  3526.     nop
  3527.     bra.b Pllb_C2p_8bit_1meg_2by1_Skip    
  3528.  
  3529. Pllb_C2p_8bit_1meg_2by1_lp:
  3530.  
  3531.     
  3532.     clr.l d1
  3533.     move.l (a0)+,d0
  3534.     move.w d0,d1    
  3535.     clr.w d0
  3536.  
  3537.         move.l d4,(a1)+    
  3538.  
  3539. Pllb_C2p_8bit_1meg_2by1_Skip:
  3540.  
  3541.  
  3542.     swap d0
  3543.     lsl.l #3,d0
  3544.     lsl.l #3,d1
  3545.  
  3546.     move.l (a4,d0),d3
  3547.     move.l 4(a4,d0),d4
  3548.  
  3549.  
  3550.     or.l (a3,d1),d3
  3551.     or.l 4(a3,d1),d4
  3552.  
  3553.  
  3554.     clr.l d1
  3555.     move.l (a0)+,d0
  3556.     move.w d0,d1    
  3557.     clr.w d0
  3558.     swap d0
  3559.  
  3560.     lsl.l #3,d0
  3561.  
  3562.     lsl.l #3,d1
  3563.  
  3564.     move.l (a4,d0),d5
  3565.     move.l 4(a4,d0),d6
  3566.  
  3567.     or.l (a3,d1),d5
  3568.     or.l 4(a3,d1),d6
  3569.  
  3570.  
  3571.     move.l d3,d0        
  3572.     move.l d5,d1
  3573.  
  3574.     and.l d2,d0
  3575.     and.l d2,d1
  3576.  
  3577.     eor.l d0,d3
  3578.     eor.l d1,d5
  3579.  
  3580.     lsr.l #8,d1
  3581.     or.l d1,d0        ; d0 = A1a2c1c2
  3582.  
  3583.         move.l d0,(a1)+        
  3584.  
  3585.     lsl.l #8,d3
  3586.  
  3587.         move.l d4,d0        
  3588.  
  3589.     or.l d5,d3
  3590.  
  3591.         move.l d6,d1
  3592.  
  3593.  
  3594.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  3595.  
  3596.  
  3597.     and.l d2,d0
  3598.     and.l d2,d1
  3599.  
  3600.     eor.l d0,d4
  3601.     eor.l d1,d6
  3602.  
  3603.     lsr.l #8,d1
  3604.     or.l d1,d0        ; d0 = A1a2c1c2
  3605.  
  3606.         move.l d0,(a1)+        
  3607.  
  3608.     lsl.l #8,d4
  3609.     or.l d6,d4
  3610.  
  3611.     dbf d7,Pllb_C2p_8bit_1meg_2by1_lp
  3612.  
  3613.     move.l d4,(a1)+        ; write outstanding long word
  3614.     rts
  3615.  
  3616.  
  3617. Pllb_C2p_8bit_1meg_2by1_APEnd:
  3618.  
  3619.  
  3620.  
  3621.  
  3622. ;    -    -    -    -    -    -    -    -    -
  3623.  
  3624.  
  3625. ;               >> DELTA 256 colour Pllb-C2P <<
  3626.  
  3627. ;                Double pixel Width
  3628.  
  3629. ;               512k fastram version
  3630.  
  3631. ;    -    -    -    -    -    -    -    -    -
  3632.  
  3633.  
  3634. Pllb_C2p_Delta_8bit_512k_2by1:
  3635.  
  3636.     bsr Pllb_c2p_init_DELTA_c2p_registers
  3637.  
  3638.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  3639.  
  3640.  
  3641. Pllb_C2p_Delta_8bit_512k_2by1_AP:
  3642.  
  3643.  
  3644. Pllb_C2p_Delta_8bit_512k_2by1_lp:
  3645.  
  3646.     move.l (a0)+,d4
  3647.     move.l (a0)+,d6
  3648.  
  3649.     cmp.l (a1)+,d4
  3650.     bne.b Pllb_C2p_Delta_8bit_512k_2by1_cont2
  3651.     cmp.l (a1)+,d6
  3652.     bne.b Pllb_C2p_Delta_8bit_512k_2by1_cont1
  3653.  
  3654.         add.w #16,a2
  3655.     
  3656.         dbf d7,Pllb_C2p_Delta_8bit_512k_2by1_lp
  3657.  
  3658.     rts
  3659.     nop
  3660.  
  3661.  
  3662. Pllb_C2p_Delta_8bit_512k_2by1_cont2:
  3663.  
  3664.     addq.l #4,a1
  3665.  
  3666. Pllb_C2p_Delta_8bit_512k_2by1_cont1:
  3667.  
  3668.     ; d0 = bytes ABCD
  3669.  
  3670.     clr.l d1
  3671.     move.w d4,d1    
  3672.     clr.w d4
  3673.     swap d4
  3674.     lsl.l #3,d4
  3675.     lsl.l #3,d1
  3676.  
  3677.     move.l (a4,d4),d3
  3678.     move.l 4(a4,d4),d4
  3679.  
  3680.     or.l (a3,d1),d3
  3681.     or.l 4(a3,d1),d4
  3682.  
  3683.     clr.l d1
  3684.     move.w d6,d1    
  3685.     clr.w d6
  3686.     swap d6
  3687.     lsl.l #3,d6
  3688.     lsl.l #3,d1
  3689.  
  3690.     move.l (a4,d6),d5
  3691.     move.l 4(a4,d6),d6
  3692.     or.l (a3,d1),d5
  3693.     or.l 4(a3,d1),d6
  3694.  
  3695.     move.l d3,d0        
  3696.     move.l d5,d1
  3697.  
  3698.     and.l d2,d0
  3699.     and.l d2,d1
  3700.  
  3701.     eor.l d0,d3
  3702.     eor.l d1,d5
  3703.  
  3704.     lsr.l #8,d1
  3705.     or.l d1,d0        ; d0 = A1a2c1c2
  3706.  
  3707.     move.l d0,(a2)+        
  3708.  
  3709.     lsl.l #8,d3
  3710.  
  3711.         move.l d4,d0        
  3712.  
  3713.     or.l d5,d3
  3714.  
  3715.         move.l d6,d1
  3716.  
  3717.  
  3718.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  3719.  
  3720.  
  3721.  
  3722.     and.l d2,d0
  3723.     and.l d2,d1
  3724.  
  3725.     eor.l d0,d4
  3726.     eor.l d1,d6
  3727.  
  3728.     lsr.l #8,d1
  3729.     or.l d1,d0        ; d0 = A1a2c1c2
  3730.  
  3731.     move.l d0,(a2)+        
  3732.  
  3733.     lsl.l #8,d4
  3734.     or.l d6,d4
  3735.  
  3736.     move.l d4,(a2)+
  3737.     
  3738.     dbf d7,Pllb_C2p_Delta_8bit_512k_2by1_lp
  3739.  
  3740.     rts
  3741.  
  3742.  
  3743. Pllb_C2p_Delta_8bit_512k_2by1_APEND:
  3744.  
  3745.  
  3746.  
  3747.  
  3748. ;    -    -    -    -    -    -    -    -    -
  3749.  
  3750. ;               >> DELTA 256 colour Pllb-C2P <<
  3751.  
  3752. ;                Double pixel Width
  3753.  
  3754. ;               1meg fastram version
  3755.  
  3756. ;    -    -    -    -    -    -    -    -    -
  3757.  
  3758.  
  3759.  
  3760. Pllb_C2p_Delta_8bit_1meg_2by1:
  3761.  
  3762.     bsr Pllb_c2p_init_DELTA_c2p_registers
  3763.  
  3764.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  3765.  
  3766.  
  3767. Pllb_C2p_Delta_8bit_1meg_2by1_AP:
  3768.  
  3769.  
  3770. Pllb_C2p_Delta_8bit_1meg_2by1_lp:
  3771.  
  3772.     move.l (a0)+,d4
  3773.     move.l (a0)+,d6
  3774.  
  3775.     cmp.l (a1)+,d4
  3776.     bne.b Pllb_C2p_Delta_8bit_1meg_2by1_cont2
  3777.     cmp.l (a1)+,d6
  3778.     bne.b Pllb_C2p_Delta_8bit_1meg_2by1_cont1
  3779.  
  3780.         add.w #16,a2
  3781.     
  3782.         dbf d7,Pllb_C2p_Delta_8bit_1meg_2by1_lp
  3783.  
  3784.     rts
  3785.     nop
  3786.  
  3787.  
  3788. Pllb_C2p_Delta_8bit_1meg_2by1_cont2:
  3789.  
  3790.     addq.l #4,a1
  3791.  
  3792. Pllb_C2p_Delta_8bit_1meg_2by1_cont1:
  3793.  
  3794.     clr.l d1
  3795.     move.w d4,d1    
  3796.     clr.w d4
  3797.     swap d4
  3798.     lsl.l #3,d4
  3799.     lsl.l #3,d1
  3800.  
  3801.     move.l (a4,d4),d3
  3802.     move.l 4(a4,d4),d4
  3803.  
  3804.     or.l (a3,d1),d3
  3805.     or.l 4(a3,d1),d4
  3806.  
  3807.     clr.l d1
  3808.     move.w d6,d1    
  3809.     clr.w d6
  3810.     swap d6
  3811.     lsl.l #3,d6
  3812.     lsl.l #3,d1
  3813.  
  3814.     move.l (a4,d6),d5
  3815.     move.l 4(a4,d6),d6
  3816.     or.l (a3,d1),d5
  3817.     or.l 4(a3,d1),d6
  3818.  
  3819.     move.l d3,d0        
  3820.     move.l d5,d1
  3821.  
  3822.     and.l d2,d0
  3823.     and.l d2,d1
  3824.  
  3825.     eor.l d0,d3
  3826.     eor.l d1,d5
  3827.  
  3828.     lsr.l #8,d1
  3829.     or.l d1,d0        ; d0 = A1a2c1c2
  3830.  
  3831.     move.l d0,(a2)+        
  3832.  
  3833.     lsl.l #8,d3
  3834.  
  3835.         move.l d4,d0        
  3836.  
  3837.     or.l d5,d3
  3838.  
  3839.         move.l d6,d1
  3840.  
  3841.  
  3842.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  3843.  
  3844.  
  3845.  
  3846.     and.l d2,d0
  3847.     and.l d2,d1
  3848.  
  3849.     eor.l d0,d4
  3850.     eor.l d1,d6
  3851.  
  3852.     lsr.l #8,d1
  3853.     or.l d1,d0        ; d0 = A1a2c1c2
  3854.  
  3855.     move.l d0,(a2)+        
  3856.  
  3857.     lsl.l #8,d4
  3858.     or.l d6,d4
  3859.  
  3860.     move.l d4,(a2)+
  3861.     
  3862.     dbf d7,Pllb_C2p_Delta_8bit_1meg_2by1_lp
  3863.  
  3864.     rts
  3865.  
  3866.  
  3867. Pllb_C2p_Delta_8bit_1meg_2by1_APEND:
  3868.  
  3869.  
  3870.  
  3871.  
  3872. ;    -    -    -    -    -    -    -    -    -
  3873.  
  3874. ;           >> NULLSKIP/CLEAR 256 colour Pllb-C2P <<
  3875.  
  3876. ;                Double pixel Width
  3877.  
  3878. ;               512k fastram version
  3879.  
  3880. ;    -    -    -    -    -    -    -    -    -
  3881.  
  3882.  
  3883. Pllb_C2p_NUllSkip_8bit_512k_2by1:
  3884.  
  3885.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  3886.  
  3887.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  3888.  
  3889.  
  3890. Pllb_C2p_NUllSkip_8bit_512k_2by1_AP:
  3891.  
  3892.  
  3893. Pllb_C2p_NUllSkip_8bit_512k_2by1_Lp:
  3894.  
  3895.     move.l (a0)+,d4
  3896.     bne.b Pllb_C2p_NUllSkip_8bit_512k_2by1_CONT2
  3897.     move.l (a0)+,d6
  3898.     bne.b Pllb_C2p_NUllSkip_8bit_512k_2by1_CONT1
  3899.  
  3900.         clr.l (a2)+
  3901.             addq.l #8,a1
  3902.         clr.l (a2)+
  3903.         clr.l (a2)+
  3904.         clr.l (a2)+
  3905.  
  3906.         dbf d7,Pllb_C2p_NUllSkip_8bit_512k_2by1_Lp
  3907.  
  3908.     rts
  3909.     nop
  3910.  
  3911.  
  3912. Pllb_C2p_NUllSkip_8bit_512k_2by1_CONT2:
  3913.  
  3914.     move.l (a0)+,d6
  3915.  
  3916.  
  3917. Pllb_C2p_NUllSkip_8bit_512k_2by1_CONT1:
  3918.  
  3919.     clr.l (a1)+    ; clear chunky pixels
  3920.  
  3921.     clr.l d1
  3922.     move.w d4,d1    
  3923.     clr.w d4
  3924.     swap d4
  3925.     lsl.l #3,d4
  3926.     lsl.l #3,d1
  3927.  
  3928.     move.l (a3,d4),d3
  3929.     move.l 4(a3,d4),d4
  3930.         lsl.l #4,d3
  3931.         lsl.l #4,d4
  3932.     or.l (a3,d1),d3
  3933.     or.l 4(a3,d1),d4
  3934.  
  3935.  
  3936.  
  3937.     clr.l (a1)+        ; clear chunky pixels 
  3938.  
  3939.  
  3940.     ; d0 = bytes ABCD
  3941.  
  3942.  
  3943.     clr.l d1
  3944.  
  3945.     move.w d6,d1    
  3946.     clr.w d6
  3947.     swap d6
  3948.     lsl.l #3,d6
  3949.     lsl.l #3,d1
  3950.  
  3951.     move.l (a3,d6),d5
  3952.     move.l 4(a3,d6),d6
  3953.         lsl.l #4,d5
  3954.         lsl.l #4,d6
  3955.     or.l (a3,d1),d5
  3956.     or.l 4(a3,d1),d6
  3957.  
  3958.     move.l d3,d0        
  3959.     move.l d5,d1
  3960.  
  3961.     and.l d2,d0
  3962.     and.l d2,d1
  3963.  
  3964.     eor.l d0,d3
  3965.     eor.l d1,d5
  3966.  
  3967.     lsr.l #8,d1
  3968.     or.l d1,d0        ; d0 = A1a2c1c2
  3969.  
  3970.     move.l d0,(a2)+        
  3971.  
  3972.     lsl.l #8,d3
  3973.  
  3974.         move.l d4,d0        
  3975.  
  3976.     or.l d5,d3
  3977.  
  3978.         move.l d6,d1
  3979.  
  3980.  
  3981.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  3982.  
  3983.  
  3984.     and.l d2,d0
  3985.     and.l d2,d1
  3986.  
  3987.     eor.l d0,d4
  3988.     eor.l d1,d6
  3989.  
  3990.     lsr.l #8,d1
  3991.     or.l d1,d0        ; d0 = A1a2c1c2
  3992.  
  3993.     move.l d0,(a2)+        
  3994.  
  3995.     lsl.l #8,d4
  3996.     or.l d6,d4
  3997.  
  3998.     move.l d4,(a2)+
  3999.  
  4000.     dbf d7,Pllb_C2p_NUllSkip_8bit_512k_2by1_LP
  4001.  
  4002.     rts
  4003.  
  4004.  
  4005. Pllb_C2p_NUllSkip_8bit_512k_2by1_APEND:
  4006.  
  4007.  
  4008.  
  4009.  
  4010.  
  4011.  
  4012. ;    -    -    -    -    -    -    -    -    -
  4013.  
  4014. ;           >> NULLSKIP/CLEAR 256 colour Pllb-C2P <<
  4015.  
  4016. ;                Double pixel Width
  4017.  
  4018. ;               1Meg fastram version
  4019.  
  4020. ;    -    -    -    -    -    -    -    -    -
  4021.  
  4022.  
  4023. Pllb_C2p_NUllSkip_8bit_1Meg_2by1:
  4024.  
  4025.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  4026.  
  4027.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  4028.  
  4029.  
  4030. Pllb_C2p_NUllSkip_8bit_1Meg_2by1_AP:
  4031.  
  4032.  
  4033. Pllb_C2p_NUllSkip_8bit_1Meg_2by1_Lp:
  4034.  
  4035.     move.l (a0)+,d4
  4036.     bne.b Pllb_C2p_NUllSkip_8bit_1Meg_2by1_CONT2
  4037.     move.l (a0)+,d6
  4038.     bne.b Pllb_C2p_NUllSkip_8bit_1Meg_2by1_CONT1
  4039.  
  4040.         clr.l (a2)+
  4041.             addq.l #8,a1
  4042.         clr.l (a2)+
  4043.         clr.l (a2)+
  4044.         clr.l (a2)+
  4045.  
  4046.  
  4047.         dbf d7,Pllb_C2p_NUllSkip_8bit_1Meg_2by1_Lp
  4048.  
  4049.     rts
  4050.     nop
  4051.  
  4052.  
  4053. Pllb_C2p_NUllSkip_8bit_1Meg_2by1_CONT2:
  4054.  
  4055.     move.l (a0)+,d6
  4056.  
  4057.  
  4058. Pllb_C2p_NUllSkip_8bit_1Meg_2by1_CONT1:
  4059.  
  4060.     clr.l (a1)+    ; clear chunky pixels
  4061.  
  4062.     clr.l d1
  4063.     move.w d4,d1    
  4064.     clr.w d4
  4065.     swap d4
  4066.     lsl.l #3,d4
  4067.     lsl.l #3,d1
  4068.  
  4069.     move.l (a3,d4),d3
  4070.     move.l 4(a3,d4),d4
  4071.         lsl.l #4,d3
  4072.         lsl.l #4,d4
  4073.     or.l (a3,d1),d3
  4074.     or.l 4(a3,d1),d4
  4075.  
  4076.  
  4077.  
  4078.     clr.l (a1)+        ; clear chunky pixels 
  4079.  
  4080.  
  4081.     ; d0 = bytes ABCD
  4082.  
  4083.  
  4084.     clr.l d1
  4085.  
  4086.     move.w d6,d1    
  4087.     clr.w d6
  4088.     swap d6
  4089.     lsl.l #3,d6
  4090.     lsl.l #3,d1
  4091.  
  4092.     move.l (a3,d6),d5
  4093.     move.l 4(a3,d6),d6
  4094.         lsl.l #4,d5
  4095.         lsl.l #4,d6
  4096.     or.l (a3,d1),d5
  4097.     or.l 4(a3,d1),d6
  4098.  
  4099.     move.l d3,d0        
  4100.     move.l d5,d1
  4101.  
  4102.     and.l d2,d0
  4103.     and.l d2,d1
  4104.  
  4105.     eor.l d0,d3
  4106.     eor.l d1,d5
  4107.  
  4108.     lsr.l #8,d1
  4109.     or.l d1,d0        ; d0 = A1a2c1c2
  4110.  
  4111.     move.l d0,(a2)+        
  4112.  
  4113.     lsl.l #8,d3
  4114.  
  4115.         move.l d4,d0        
  4116.  
  4117.     or.l d5,d3
  4118.  
  4119.         move.l d6,d1
  4120.  
  4121.  
  4122.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  4123.  
  4124.  
  4125.     and.l d2,d0
  4126.     and.l d2,d1
  4127.  
  4128.     eor.l d0,d4
  4129.     eor.l d1,d6
  4130.  
  4131.     lsr.l #8,d1
  4132.     or.l d1,d0        ; d0 = A1a2c1c2
  4133.  
  4134.     move.l d0,(a2)+        
  4135.  
  4136.     lsl.l #8,d4
  4137.     or.l d6,d4
  4138.  
  4139.     move.l d4,(a2)+
  4140.  
  4141.     dbf d7,Pllb_C2p_NUllSkip_8bit_1Meg_2by1_LP
  4142.  
  4143.     rts
  4144.  
  4145.  
  4146. Pllb_C2p_NUllSkip_8bit_1Meg_2by1_APEND:
  4147.  
  4148.  
  4149.  
  4150.  
  4151.  
  4152.  
  4153.  
  4154.  
  4155.  
  4156.  
  4157. ;    -    -    -    -    -    -    -    -    -
  4158.  
  4159. ;           >> DELTANULLSKIP/CLEAR 256 colour Pllb-C2P <<
  4160.  
  4161. ;                Double pixel Width
  4162.  
  4163. ;               512k fastram version
  4164.  
  4165. ;    -    -    -    -    -    -    -    -    -
  4166.  
  4167.  
  4168. Pllb_C2p_DeltaNullSkip_8bit_512k_2by1:
  4169.  
  4170.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  4171.  
  4172.  
  4173.     move.l #16,a5
  4174.  
  4175.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  4176.  
  4177.  
  4178.     
  4179.  
  4180. Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_AP:
  4181.  
  4182.  
  4183. Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_Lp:
  4184.  
  4185.     move.l (a0)+,d4
  4186.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_CONT2
  4187.     move.l (a0)+,d6
  4188.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_CONT1
  4189.  
  4190.  
  4191.     tst.b (a6)+
  4192.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_nodelta
  4193.  
  4194.  
  4195.         addq.l #8,a1
  4196.         add.w a5,a2
  4197.         
  4198.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_LP
  4199.  
  4200.     rts
  4201.     nop
  4202.  
  4203. Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_nodelta:
  4204.  
  4205.  
  4206.         clr.l (a2)+
  4207.             addq.l #8,a1
  4208.         clr.l (a2)+
  4209.         clr.l (a2)+
  4210.         clr.l (a2)+
  4211.  
  4212.         clr.b -1(a6)
  4213.  
  4214.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_Lp
  4215.  
  4216.     rts
  4217.     nop
  4218.  
  4219.  
  4220. Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_CONT2:
  4221.  
  4222.     move.l (a0)+,d6
  4223.  
  4224.  
  4225. Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_CONT1:
  4226.  
  4227.     clr.l (a1)+    ; clear chunky pixels
  4228.  
  4229.     clr.l d1
  4230.     move.w d4,d1    
  4231.     clr.w d4
  4232.  
  4233.         st.b (a6)+
  4234.  
  4235.     swap d4
  4236.     lsl.l #3,d4
  4237.     lsl.l #3,d1
  4238.  
  4239.     move.l (a3,d4),d3
  4240.     move.l 4(a3,d4),d4
  4241.         lsl.l #4,d3
  4242.         lsl.l #4,d4
  4243.     or.l (a3,d1),d3
  4244.     or.l 4(a3,d1),d4
  4245.  
  4246.  
  4247.  
  4248.     clr.l (a1)+        ; clear chunky pixels 
  4249.  
  4250.  
  4251.     ; d0 = bytes ABCD
  4252.  
  4253.  
  4254.     clr.l d1
  4255.  
  4256.     move.w d6,d1    
  4257.     clr.w d6
  4258.     swap d6
  4259.     lsl.l #3,d6
  4260.     lsl.l #3,d1
  4261.  
  4262.     move.l (a3,d6),d5
  4263.     move.l 4(a3,d6),d6
  4264.         lsl.l #4,d5
  4265.         lsl.l #4,d6
  4266.     or.l (a3,d1),d5
  4267.     or.l 4(a3,d1),d6
  4268.  
  4269.     move.l d3,d0        
  4270.     move.l d5,d1
  4271.  
  4272.     and.l d2,d0
  4273.     and.l d2,d1
  4274.  
  4275.     eor.l d0,d3
  4276.     eor.l d1,d5
  4277.  
  4278.     lsr.l #8,d1
  4279.     or.l d1,d0        ; d0 = A1a2c1c2
  4280.  
  4281.     move.l d0,(a2)+        
  4282.  
  4283.     lsl.l #8,d3
  4284.  
  4285.         move.l d4,d0        
  4286.  
  4287.     or.l d5,d3
  4288.  
  4289.         move.l d6,d1
  4290.  
  4291.  
  4292.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  4293.  
  4294.  
  4295.     and.l d2,d0
  4296.     and.l d2,d1
  4297.  
  4298.     eor.l d0,d4
  4299.     eor.l d1,d6
  4300.  
  4301.     lsr.l #8,d1
  4302.     or.l d1,d0        ; d0 = A1a2c1c2
  4303.  
  4304.     move.l d0,(a2)+        
  4305.  
  4306.     lsl.l #8,d4
  4307.     or.l d6,d4
  4308.  
  4309.     move.l d4,(a2)+
  4310.  
  4311.  
  4312.  
  4313.     dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_LP
  4314.  
  4315.     rts
  4316.  
  4317.  
  4318. Pllb_C2p_DeltaNullSkip_8bit_512k_2by1_APEND:
  4319.  
  4320.  
  4321.  
  4322.  
  4323.  
  4324.  
  4325. ;    -    -    -    -    -    -    -    -    -
  4326.  
  4327. ;           >> DeltaNullSkip/CLEAR 256 colour Pllb-C2P <<
  4328.  
  4329. ;                Double pixel Width
  4330.  
  4331. ;               1Meg fastram version
  4332.  
  4333. ;    -    -    -    -    -    -    -    -    -
  4334.  
  4335.  
  4336. Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1:
  4337.  
  4338.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  4339.  
  4340.     move.l #16,a5
  4341.  
  4342.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  4343.  
  4344.  
  4345. Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_AP:
  4346.  
  4347. toss:
  4348.  
  4349. Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_Lp:
  4350.  
  4351.     move.l (a0)+,d4
  4352.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_CONT2
  4353.     move.l (a0)+,d6
  4354.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_CONT1
  4355.  
  4356.     tst.b (a6)+
  4357.     bne.b Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_nodelta
  4358.  
  4359.  
  4360.         addq.l #8,a1
  4361.  
  4362.         add.w a5,a2
  4363. ;        addq.l #1,a6
  4364.         
  4365.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_LP
  4366.  
  4367.     rts
  4368.     nop
  4369.  
  4370. Pllb_C2p_DeltaNullSkip_8bit_1meg_2by1_nodelta:
  4371.  
  4372.  
  4373.         clr.l (a2)+
  4374.             addq.l #8,a1
  4375.         clr.l (a2)+
  4376.         clr.l (a2)+
  4377.         clr.l (a2)+
  4378.  
  4379.         clr.b -1(a6)
  4380.  
  4381.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1meg_2by1_Lp
  4382.  
  4383.     rts
  4384.     nop
  4385.  
  4386.  
  4387.  
  4388.  
  4389.  
  4390. Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_CONT2:
  4391.  
  4392.     move.l (a0)+,d6
  4393.  
  4394.  
  4395. Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_CONT1:
  4396.  
  4397.     clr.l (a1)+    ; clear chunky pixels
  4398.  
  4399.     clr.l d1
  4400.     move.w d4,d1    
  4401.     clr.w d4
  4402.  
  4403.     st.b (a6)+
  4404.  
  4405.  
  4406.     swap d4
  4407.     lsl.l #3,d4
  4408.     lsl.l #3,d1
  4409.  
  4410.     move.l (a3,d4),d3
  4411.     move.l 4(a3,d4),d4
  4412.         lsl.l #4,d3
  4413.         lsl.l #4,d4
  4414.     or.l (a3,d1),d3
  4415.     or.l 4(a3,d1),d4
  4416.  
  4417.  
  4418.  
  4419.     clr.l (a1)+        ; clear chunky pixels 
  4420.  
  4421.  
  4422.     ; d0 = bytes ABCD
  4423.  
  4424.  
  4425.     clr.l d1
  4426.  
  4427.     move.w d6,d1    
  4428.     clr.w d6
  4429.     swap d6
  4430.     lsl.l #3,d6
  4431.     lsl.l #3,d1
  4432.  
  4433.     move.l (a3,d6),d5
  4434.     move.l 4(a3,d6),d6
  4435.         lsl.l #4,d5
  4436.         lsl.l #4,d6
  4437.     or.l (a3,d1),d5
  4438.     or.l 4(a3,d1),d6
  4439.  
  4440.     move.l d3,d0        
  4441.     move.l d5,d1
  4442.  
  4443.     and.l d2,d0
  4444.     and.l d2,d1
  4445.  
  4446.     eor.l d0,d3
  4447.     eor.l d1,d5
  4448.  
  4449.     lsr.l #8,d1
  4450.     or.l d1,d0        ; d0 = A1a2c1c2
  4451.  
  4452.     move.l d0,(a2)+        
  4453.  
  4454.     lsl.l #8,d3
  4455.  
  4456.         move.l d4,d0        
  4457.  
  4458.     or.l d5,d3
  4459.  
  4460.         move.l d6,d1
  4461.  
  4462.  
  4463.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  4464.  
  4465.  
  4466.     and.l d2,d0
  4467.     and.l d2,d1
  4468.  
  4469.     eor.l d0,d4
  4470.     eor.l d1,d6
  4471.  
  4472.     lsr.l #8,d1
  4473.     or.l d1,d0        ; d0 = A1a2c1c2
  4474.  
  4475.     move.l d0,(a2)+        
  4476.  
  4477.     lsl.l #8,d4
  4478.     or.l d6,d4
  4479.  
  4480.     move.l d4,(a2)+
  4481.  
  4482.     dbf d7,Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_LP
  4483.  
  4484.     rts
  4485.  
  4486.  
  4487. Pllb_C2p_DeltaNullSkip_8bit_1Meg_2by1_APEND:
  4488.  
  4489.  
  4490.  
  4491.  
  4492.  
  4493. ;---------------------------------------------------------------------------
  4494. ;---------------------------------------------------------------------------
  4495. ;---------------------------------------------------------------------------
  4496. ;--------------------------4by1 NORMAL VERSIONS-----------------------------
  4497. ;---------------------------------------------------------------------------
  4498. ;---------------------------------------------------------------------------
  4499. ;---------------------------------------------------------------------------
  4500.  
  4501.  
  4502. ;    -    -    -    -    -    -    -    -    -
  4503.  
  4504. ;               >> Normal 256 colour Pllb-C2P <<
  4505.  
  4506. ;                QUAD pixel Width
  4507.  
  4508. ;               512k fastram version
  4509.  
  4510. ;    -    -    -    -    -    -    -    -    -
  4511.  
  4512.  
  4513. Pllb_C2p_8bit_512k_4by1:
  4514.  
  4515.     bsr Pllb_c2p_init_Normal_c2p_registers
  4516.  
  4517.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  4518.  
  4519.  
  4520. Pllb_C2p_8bit_512k_4by1_AP:
  4521.  
  4522.  
  4523.     clr.l d1
  4524.     move.l (a0)+,d0
  4525.     move.w d0,d1    
  4526.     clr.w d0
  4527.     nop
  4528.     nop
  4529.     nop
  4530.     bra.b Pllb_C2p_8bit_512k_4by1_SKIP
  4531.  
  4532.  
  4533. Pllb_C2p_8bit_512k_4by1_lp:
  4534.  
  4535.     clr.l d1
  4536.     move.l (a0)+,d0
  4537.     move.w d0,d1    
  4538.  
  4539.     clr.w d0
  4540.  
  4541.         move.l d4,(a1)+        ; write the last longword
  4542.  
  4543.  
  4544. Pllb_C2p_8bit_512k_4by1_SKIP:
  4545.  
  4546.     swap d0
  4547.     lsl.l #3,d0
  4548.     lsl.l #3,d1
  4549.  
  4550.     move.l (a3,d0),d3
  4551.     move.l 4(a3,d0),d4
  4552.  
  4553.     move.l (a3,d1),d5
  4554.     move.l 4(a3,d1),d6
  4555.  
  4556.     move.l d3,d0        
  4557.     move.l d5,d1
  4558.  
  4559.     and.l d2,d0
  4560.     and.l d2,d1
  4561.  
  4562.     eor.l d0,d3
  4563.     eor.l d1,d5
  4564.  
  4565.     lsr.l #8,d1
  4566.     or.l d1,d0        ; d0 = A1a2c1c2
  4567.  
  4568.     move.l d0,(a1)+        
  4569.  
  4570.     lsl.l #8,d3
  4571.  
  4572.         move.l d4,d0        
  4573.  
  4574.     or.l d5,d3
  4575.  
  4576.         move.l d6,d1
  4577.  
  4578.  
  4579.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  4580.  
  4581.  
  4582.     and.l d2,d0
  4583.     and.l d2,d1
  4584.  
  4585.     eor.l d0,d4
  4586.     eor.l d1,d6
  4587.  
  4588.     lsr.l #8,d1
  4589.     or.l d1,d0        ; d0 = A1a2c1c2
  4590.  
  4591.         move.l d0,(a1)+        
  4592.  
  4593.     lsl.l #8,d4
  4594.     or.l d6,d4
  4595.  
  4596.  
  4597.     dbf d7,Pllb_C2p_8bit_512k_4by1_lp
  4598.  
  4599.     move.l d4,(a1)+        ; write outstanding long word
  4600.     rts
  4601.  
  4602.  
  4603.  
  4604. Pllb_C2p_8bit_512k_4by1_APEND:
  4605.  
  4606.  
  4607.  
  4608.  
  4609.  
  4610.  
  4611. ;---------------------------------------------------------------------------
  4612. ;---------------------------------------------------------------------------
  4613. ;---------------------------------------------------------------------------
  4614. ;--------------------------4by1 DELTA VERSIONS-----------------------------
  4615. ;---------------------------------------------------------------------------
  4616. ;---------------------------------------------------------------------------
  4617. ;---------------------------------------------------------------------------
  4618.  
  4619.  
  4620. ;    -    -    -    -    -    -    -    -    -
  4621.  
  4622. ;               >> DELTA 256 colour Pllb-C2P <<
  4623.  
  4624. ;                QUAD pixel Width
  4625.  
  4626. ;               512k fastram version
  4627.  
  4628. ;    -    -    -    -    -    -    -    -    -
  4629.  
  4630.  
  4631. Pllb_C2p_DELTA_8bit_512k_4by1:
  4632.  
  4633.     bsr Pllb_c2p_init_DELTA_c2p_registers
  4634.  
  4635.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  4636.  
  4637.  
  4638. Pllb_C2p_DELTA_8bit_512k_4by1_AP:
  4639.  
  4640.  
  4641. Pllb_C2p_DELTA_8bit_512k_4by1_lp:
  4642.  
  4643.     move.l (a0)+,d4
  4644.  
  4645.     cmp.l (a1)+,d4
  4646.     bne.b Pllb_C2p_DELTA_8bit_512k_4by1_CONT
  4647.  
  4648.         add.w #16,a2
  4649.     
  4650.         dbf d7,Pllb_C2p_DELTA_8bit_512k_4by1_lp
  4651.     rts
  4652.     nop
  4653.  
  4654.  
  4655. Pllb_C2p_DELTA_8bit_512k_4by1_CONT:
  4656.  
  4657.     clr.l d1
  4658.     move.w d4,d1    
  4659.     clr.w d4
  4660.     swap d4
  4661.     lsl.l #3,d4
  4662.  
  4663.     move.l (a3,d4),d3
  4664.     move.l 4(a3,d4),d4
  4665.  
  4666.     lsl.l #3,d1
  4667.     move.l (a3,d1),d5
  4668.     move.l 4(a3,d1),d6
  4669.  
  4670.     move.l d3,d0        
  4671.     move.l d5,d1
  4672.  
  4673.     and.l d2,d0
  4674.     and.l d2,d1
  4675.  
  4676.     eor.l d0,d3
  4677.     eor.l d1,d5
  4678.  
  4679.     lsr.l #8,d1
  4680.     or.l d1,d0        ; d0 = A1a2c1c2
  4681.  
  4682.     move.l d0,(a2)+        
  4683.  
  4684.     lsl.l #8,d3
  4685.  
  4686.         move.l d4,d0        
  4687.  
  4688.     or.l d5,d3
  4689.  
  4690.         move.l d6,d1
  4691.  
  4692.  
  4693.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  4694.  
  4695.  
  4696.  
  4697.     and.l d2,d0
  4698.     and.l d2,d1
  4699.  
  4700.     eor.l d0,d4
  4701.     eor.l d1,d6
  4702.  
  4703.     lsr.l #8,d1
  4704.     or.l d1,d0        ; d0 = A1a2c1c2
  4705.  
  4706.     move.l d0,(a2)+        
  4707.  
  4708.     lsl.l #8,d4
  4709.     or.l d6,d4
  4710.  
  4711.     move.l d4,(a2)+
  4712.     
  4713.     dbf d7,Pllb_C2p_DELTA_8bit_512k_4by1_lp
  4714.  
  4715.     rts
  4716.  
  4717.  
  4718. Pllb_C2p_DELTA_8bit_512k_4by1_APEND:
  4719.  
  4720.  
  4721.  
  4722.  
  4723. ;---------------------------------------------------------------------------
  4724. ;---------------------------------------------------------------------------
  4725. ;---------------------------------------------------------------------------
  4726. ;--------------------------4by1 NULLSKIP VERSIONS-----------------------------
  4727. ;---------------------------------------------------------------------------
  4728. ;---------------------------------------------------------------------------
  4729. ;---------------------------------------------------------------------------
  4730.  
  4731.  
  4732. ;    -    -    -    -    -    -    -    -    -
  4733.  
  4734. ;          >> NULLSKIP/CLEAR 256 colour Pllb-C2P <<
  4735.  
  4736. ;                QUAD pixel Width
  4737.  
  4738. ;               512k fastram version
  4739.  
  4740. ;    -    -    -    -    -    -    -    -    -
  4741.  
  4742.  
  4743. Pllb_C2p_NULLSKIP_8bit_512k_4by1:
  4744.  
  4745.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  4746.  
  4747.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  4748.  
  4749.  
  4750. Pllb_C2p_NULLSKIP_8bit_512k_4by1_AP:
  4751.  
  4752.  
  4753. Pllb_C2p_NULLSKIP_8bit_512k_4by1_LP:
  4754.  
  4755.     move.l (a0)+,d4
  4756.     bne.b Pllb_C2p_NULLSKIP_8bit_512k_4by1_CONT
  4757.  
  4758.         clr.l (a2)+
  4759.             addq.l #4,a1
  4760.         clr.l (a2)+
  4761.         clr.l (a2)+
  4762.         clr.l (a2)+
  4763.         dbf d7,Pllb_C2p_NULLSKIP_8bit_512k_4by1_LP
  4764.  
  4765.     rts
  4766.     nop
  4767.  
  4768.  
  4769. Pllb_C2p_NULLSKIP_8bit_512k_4by1_CONT:
  4770.  
  4771.  
  4772.     clr.l d1
  4773.     move.w d4,d1    
  4774.     clr.w d4
  4775.     swap d4
  4776.     lsl.l #3,d4
  4777.     lsl.l #3,d1
  4778.  
  4779.     move.l (a3,d4),d3
  4780.     move.l 4(a3,d4),d4
  4781.  
  4782.     move.l (a3,d1),d5
  4783.     move.l 4(a3,d1),d6
  4784.  
  4785.  
  4786.         clr.l (a1)+    ; clear chunky
  4787.  
  4788.     move.l d3,d0        
  4789.     move.l d5,d1
  4790.  
  4791.     and.l d2,d0
  4792.     and.l d2,d1
  4793.  
  4794.     eor.l d0,d3
  4795.     eor.l d1,d5
  4796.  
  4797.     lsr.l #8,d1
  4798.     or.l d1,d0        ; d0 = A1a2c1c2
  4799.  
  4800.     move.l d0,(a2)+        
  4801.  
  4802.     lsl.l #8,d3
  4803.  
  4804.         move.l d4,d0        
  4805.  
  4806.     or.l d5,d3
  4807.  
  4808.         move.l d6,d1
  4809.  
  4810.  
  4811.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  4812.  
  4813.  
  4814.  
  4815.     and.l d2,d0
  4816.     and.l d2,d1
  4817.  
  4818.     eor.l d0,d4
  4819.     eor.l d1,d6
  4820.  
  4821.     lsr.l #8,d1
  4822.     or.l d1,d0        ; d0 = A1a2c1c2
  4823.  
  4824.     move.l d0,(a2)+        
  4825.  
  4826.     lsl.l #8,d4
  4827.     or.l d6,d4
  4828.  
  4829.     move.l d4,(a2)+
  4830.     dbf d7,Pllb_C2p_NULLSKIP_8bit_512k_4by1_LP
  4831.     
  4832.     rts
  4833.  
  4834.  
  4835. Pllb_C2p_NULLSKIP_8bit_512k_4by1_APEND:
  4836.  
  4837.  
  4838.  
  4839.  
  4840.  
  4841.  
  4842.  
  4843.  
  4844.  
  4845.  
  4846. ;    -    -    -    -    -    -    -    -    -
  4847.  
  4848. ;          >> DeltaNullSkip/CLEAR 256 colour Pllb-C2P <<
  4849.  
  4850. ;                QUAD pixel Width
  4851.  
  4852. ;               512k fastram version
  4853.  
  4854. ;    -    -    -    -    -    -    -    -    -
  4855.  
  4856.  
  4857. Pllb_C2p_DeltaNullSkip_8bit_512k_4by1:
  4858.  
  4859.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  4860.  
  4861.     move.l #16,a5    ; constant 
  4862.  
  4863.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  4864.  
  4865.  
  4866. Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_AP:
  4867.  
  4868.  
  4869. Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_LP:
  4870.  
  4871.     move.l (a0)+,d4
  4872.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_CONT
  4873.  
  4874.     tst.b (a6)+
  4875.     bne.b Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_nodelta
  4876.  
  4877.  
  4878.         addq.l #4,a1
  4879.         add.w a5,a2
  4880.         
  4881.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_LP
  4882.  
  4883.     rts
  4884.     nop
  4885.     nop
  4886.  
  4887. Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_nodelta:
  4888.  
  4889.  
  4890.         clr.l (a2)+
  4891.             addq.l #4,a1
  4892.         clr.l (a2)+
  4893.         clr.l (a2)+
  4894.         clr.l (a2)+
  4895.  
  4896.         clr.b -1(a6)
  4897.  
  4898.         dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_Lp
  4899.  
  4900.     rts
  4901.     nop
  4902.  
  4903.  
  4904. Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_CONT:
  4905.  
  4906.     st.b (a6)+        
  4907.  
  4908.     clr.l d1
  4909.     move.w d4,d1    
  4910.     clr.w d4
  4911.     swap d4
  4912.     lsl.l #3,d4
  4913.     lsl.l #3,d1
  4914.  
  4915.     move.l (a3,d4),d3
  4916.     move.l 4(a3,d4),d4
  4917.  
  4918.     move.l (a3,d1),d5
  4919.     move.l 4(a3,d1),d6
  4920.  
  4921.  
  4922.         clr.l (a1)+    ; clear chunky
  4923.  
  4924.     move.l d3,d0        
  4925.     move.l d5,d1
  4926.  
  4927.     and.l d2,d0
  4928.     and.l d2,d1
  4929.  
  4930.     eor.l d0,d3
  4931.     eor.l d1,d5
  4932.  
  4933.     lsr.l #8,d1
  4934.     or.l d1,d0        ; d0 = A1a2c1c2
  4935.  
  4936.     move.l d0,(a2)+        
  4937.  
  4938.     lsl.l #8,d3
  4939.  
  4940.         move.l d4,d0        
  4941.  
  4942.     or.l d5,d3
  4943.  
  4944.         move.l d6,d1
  4945.  
  4946.  
  4947.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  4948.  
  4949.  
  4950.     and.l d2,d0
  4951.     and.l d2,d1
  4952.  
  4953.     eor.l d0,d4
  4954.     eor.l d1,d6
  4955.  
  4956.     lsr.l #8,d1
  4957.     or.l d1,d0        ; d0 = A1a2c1c2
  4958.  
  4959.     move.l d0,(a2)+        
  4960.  
  4961.     lsl.l #8,d4
  4962.     or.l d6,d4
  4963.  
  4964.     move.l d4,(a2)+
  4965.     dbf d7,Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_LP
  4966.     
  4967.     rts
  4968.  
  4969.  
  4970. Pllb_C2p_DeltaNullSkip_8bit_512k_4by1_APEND:
  4971.  
  4972.  
  4973.  
  4974.  
  4975.  
  4976.  
  4977.  
  4978.  
  4979.  
  4980.  
  4981.  
  4982.  
  4983. ;    -    -    -    -    -    -    -    -    -
  4984.  
  4985. ;               >> NORMAL 64colour Pllb-C2P <<
  4986.  
  4987. ;                Single pixel Width
  4988.  
  4989. ;                512k fastram version
  4990.  
  4991. ;    -    -    -    -    -    -    -    -    -
  4992.  
  4993. Pllb_C2p_6bit_512k_1by1:
  4994.  
  4995.     bsr Pllb_c2p_init_Normal_c2p_registers
  4996.  
  4997.     ; a4/a5/a6 table not used/needed
  4998.  
  4999.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  5000.  
  5001.  
  5002. Pllb_C2p_6bit_512k_1by1_AP:
  5003.  
  5004.     clr.l d1
  5005.     move.l (a0)+,d0
  5006.     move.w d0,d1    
  5007.     clr.w d0
  5008.     bra.b Pllb_C2p_6bit_512k_1by1_skip
  5009.     nop
  5010.     nop
  5011.     nop
  5012.  
  5013. Pllb_C2p_6bit_512k_1by1_lp:
  5014.  
  5015.     clr.l d1
  5016.     move.l (a0)+,d0
  5017.     move.w d0,d1    
  5018.     clr.w d0
  5019.  
  5020.         move.l d4,(a1)+
  5021.  
  5022. Pllb_C2p_6bit_512k_1by1_skip:
  5023.  
  5024.     swap d0
  5025.     lsl.l #3,d0
  5026.     lsl.l #3,d1
  5027.  
  5028.     move.l (a3,d0),d3
  5029.     move.w 4(a3,d0),d4
  5030.  
  5031.     lsl.l #2,d3
  5032.     lsl.w #2,d4
  5033.  
  5034.  
  5035.     or.l (a3,d1),d3
  5036.     or.w 4(a3,d1),d4
  5037.  
  5038.     lsl.l #2,d3
  5039.     lsl.w #2,d4
  5040.  
  5041.  
  5042.     clr.l d1
  5043.     move.l (a0)+,d0
  5044.     move.w d0,d1    
  5045.     clr.w d0
  5046.     swap d0
  5047.     lsl.l #3,d0
  5048.     lsl.l #3,d1
  5049.  
  5050.     or.l (a3,d0),d3
  5051.     or.w 4(a3,d0),d4
  5052.  
  5053.     lsl.l #2,d3
  5054.     lsl.w #2,d4
  5055.  
  5056.  
  5057.     or.l (a3,d1),d3
  5058.     or.w 4(a3,d1),d4
  5059.  
  5060.  
  5061.     clr.l d1
  5062.     move.l (a0)+,d0
  5063.     move.w d0,d1    
  5064.     clr.w d0
  5065.     swap d0
  5066.     lsl.l #3,d0
  5067.     lsl.l #3,d1
  5068.     move.l (a3,d0),d5
  5069.     move.w 4(a3,d0),d6
  5070.  
  5071.     lsl.l #2,d5
  5072.     lsl.w #2,d6
  5073.  
  5074.  
  5075.     or.l (a3,d1),d5
  5076.     or.w 4(a3,d1),d6
  5077.  
  5078.     lsl.l #2,d5
  5079.     lsl.w #2,d6
  5080.  
  5081.     clr.l d1
  5082.     move.l (a0)+,d0
  5083.     move.w d0,d1    
  5084.     clr.w d0
  5085.     swap d0
  5086.     lsl.l #3,d0
  5087.     lsl.l #3,d1
  5088.  
  5089.     or.l (a3,d0),d5
  5090.     or.w 4(a3,d0),d6
  5091.  
  5092.     lsl.l #2,d5
  5093.     lsl.w #2,d6
  5094.  
  5095.     or.l (a3,d1),d5
  5096.     or.w 4(a3,d1),d6
  5097.  
  5098.     move.l d3,d0        
  5099.     move.l d5,d1
  5100.  
  5101.     and.l d2,d0
  5102.     and.l d2,d1
  5103.  
  5104.     eor.l d0,d3
  5105.     eor.l d1,d5
  5106.  
  5107.     lsr.l #8,d1
  5108.     or.l d1,d0        ; d0 = A1a2c1c2
  5109.  
  5110.         move.l d0,(a1)+        
  5111.  
  5112.         lsl.l #8,d3
  5113.  
  5114.  
  5115.     move.w d4,d0        ;----e1f1
  5116.     swap d4            ;e1f1----
  5117.  
  5118.         or.l d5,d3
  5119.  
  5120.  
  5121.     move.w d6,d4        ;e1f1e2f2
  5122.  
  5123.  
  5124.  
  5125.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  5126.  
  5127.  
  5128.     rol.w #8,d4        ;e1f1f2e2
  5129.     move.b d4,d0        ;----e1e2
  5130.     lsl.l #8,d4        ;f1f2e2--
  5131.     move.w d0,d4        ;f1f2e1e2
  5132.     
  5133.  
  5134.     dbf d7,Pllb_C2p_6bit_512k_1by1_lp
  5135.  
  5136.     move.l d4,(a1)+        ; write final 32bits
  5137.  
  5138.     rts
  5139.  
  5140.  
  5141. Pllb_C2p_6bit_512k_1by1_APEND:
  5142.  
  5143.  
  5144.  
  5145.  
  5146. ;    -    -    -    -    -    -    -    -    -
  5147.  
  5148. ;               >> NORMAL 64colour Pllb-C2P <<
  5149.  
  5150. ;                Single pixel Width
  5151.  
  5152. ;                1meg fastram version
  5153.  
  5154. ;    -    -    -    -    -    -    -    -    -
  5155.  
  5156. Pllb_C2p_6bit_1Meg_1by1:
  5157.  
  5158.     bsr Pllb_c2p_init_Normal_c2p_registers
  5159.  
  5160.     ; a5/a6 table not used/needed
  5161.  
  5162.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  5163.  
  5164.  
  5165. Pllb_C2p_6bit_1Meg_1by1_AP:
  5166.  
  5167.     clr.l d1
  5168.     move.l (a0)+,d0
  5169.     move.w d0,d1    
  5170.     clr.w d0
  5171.     bra.b Pllb_C2p_6bit_1Meg_1by1_skip
  5172.     nop
  5173.     nop
  5174.     nop
  5175.  
  5176. Pllb_C2p_6bit_1Meg_1by1_lp:
  5177.  
  5178.     clr.l d1
  5179.     move.l (a0)+,d0
  5180.     move.w d0,d1    
  5181.     clr.w d0
  5182.  
  5183.         move.l d4,(a1)+
  5184.  
  5185. Pllb_C2p_6bit_1Meg_1by1_skip:
  5186.  
  5187.     swap d0
  5188.     lsl.l #3,d0
  5189.     lsl.l #3,d1
  5190.  
  5191.     move.l (a4,d0),d3
  5192.     move.w 4(a4,d0),d4
  5193.  
  5194.     lsl.l #2,d3
  5195.     lsl.w #2,d4
  5196.  
  5197.  
  5198.     or.l (a4,d1),d3
  5199.     or.w 4(a4,d1),d4
  5200.  
  5201.     lsl.l #2,d3
  5202.     lsl.w #2,d4
  5203.  
  5204.  
  5205.     clr.l d1
  5206.     move.l (a0)+,d0
  5207.     move.w d0,d1    
  5208.     clr.w d0
  5209.     swap d0
  5210.     lsl.l #3,d0
  5211.     lsl.l #3,d1
  5212.  
  5213.     or.l (a4,d0),d3
  5214.     or.w 4(a4,d0),d4
  5215.  
  5216.     or.l (a3,d1),d3
  5217.     or.w 4(a3,d1),d4
  5218.  
  5219.  
  5220.     clr.l d1
  5221.     move.l (a0)+,d0
  5222.     move.w d0,d1    
  5223.     clr.w d0
  5224.     swap d0
  5225.     lsl.l #3,d0
  5226.     lsl.l #3,d1
  5227.     move.l (a4,d0),d5
  5228.     move.w 4(a4,d0),d6
  5229.  
  5230.         lsl.l #2,d5
  5231.         lsl.w #2,d6
  5232.  
  5233.     or.l (a4,d1),d5
  5234.     or.w 4(a4,d1),d6
  5235.  
  5236.         lsl.l #2,d5
  5237.         lsl.w #2,d6
  5238.  
  5239.     clr.l d1
  5240.     move.l (a0)+,d0
  5241.     move.w d0,d1    
  5242.     clr.w d0
  5243.     swap d0
  5244.     lsl.l #3,d0
  5245.     lsl.l #3,d1
  5246.  
  5247.     or.l (a4,d0),d5
  5248.     or.w 4(a4,d0),d6
  5249.  
  5250.     or.l (a3,d1),d5
  5251.     or.w 4(a3,d1),d6
  5252.  
  5253.     move.l d3,d0        
  5254.     move.l d5,d1
  5255.  
  5256.     and.l d2,d0
  5257.     and.l d2,d1
  5258.  
  5259.     eor.l d0,d3
  5260.     eor.l d1,d5
  5261.  
  5262.     lsr.l #8,d1
  5263.     or.l d1,d0        ; d0 = A1a2c1c2
  5264.  
  5265.         move.l d0,(a1)+        
  5266.  
  5267.         lsl.l #8,d3
  5268.  
  5269.  
  5270.     move.w d4,d0        ;----e1f1
  5271.     swap d4            ;e1f1----
  5272.  
  5273.         or.l d5,d3
  5274.  
  5275.  
  5276.     move.w d6,d4        ;e1f1e2f2
  5277.  
  5278.  
  5279.  
  5280.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  5281.  
  5282.  
  5283.     rol.w #8,d4        ;e1f1f2e2
  5284.     move.b d4,d0        ;----e1e2
  5285.     lsl.l #8,d4        ;f1f2e2--
  5286.     move.w d0,d4        ;f1f2e1e2
  5287.     
  5288.  
  5289.     dbf d7,Pllb_C2p_6bit_1Meg_1by1_lp
  5290.  
  5291.     move.l d4,(a1)+        ; write final 32bits
  5292.  
  5293.     rts
  5294.  
  5295.  
  5296. Pllb_C2p_6bit_1Meg_1by1_APEND:
  5297.  
  5298.  
  5299.  
  5300.  
  5301.  
  5302.  
  5303.  
  5304. ;    -    -    -    -    -    -    -    -    -
  5305.  
  5306. ;               >> NORMAL 64colour Pllb-C2P <<
  5307.  
  5308. ;                Single pixel Width
  5309.  
  5310. ;                1.5meg fastram version
  5311.  
  5312. ;    -    -    -    -    -    -    -    -    -
  5313.  
  5314. Pllb_C2p_6bit_1_5Meg_1by1:
  5315.  
  5316.     bsr Pllb_c2p_init_Normal_c2p_registers
  5317.  
  5318.     ; a6 table not used/needed
  5319.  
  5320.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  5321.  
  5322.  
  5323. Pllb_C2p_6bit_1_5Meg_1by1_AP:
  5324.  
  5325.     clr.l d1
  5326.     move.l (a0)+,d0
  5327.     move.w d0,d1    
  5328.     clr.w d0
  5329.     bra.b Pllb_C2p_6bit_1_5Meg_1by1_skip
  5330.     nop
  5331.     nop
  5332.     nop
  5333.  
  5334. Pllb_C2p_6bit_1_5Meg_1by1_lp:
  5335.  
  5336.     clr.l d1
  5337.     move.l (a0)+,d0
  5338.     move.w d0,d1    
  5339.     clr.w d0
  5340.  
  5341.         move.l d4,(a1)+
  5342.  
  5343. Pllb_C2p_6bit_1_5Meg_1by1_skip:
  5344.  
  5345.     swap d0
  5346.     lsl.l #3,d0
  5347.     lsl.l #3,d1
  5348.  
  5349.     move.l (a5,d0),d3
  5350.     move.w 4(a5,d0),d4
  5351.  
  5352.     lsl.l #2,d3
  5353.     lsl.l #2,d4
  5354.  
  5355.  
  5356.     or.l (a5,d1),d3
  5357.     or.w 4(a5,d1),d4
  5358.  
  5359. ;        lsl.l #2,d3
  5360. ;        lsl.w #2,d4
  5361.  
  5362.  
  5363.     clr.l d1
  5364.     move.l (a0)+,d0
  5365.     move.w d0,d1    
  5366.     clr.w d0
  5367.     swap d0
  5368.     lsl.l #3,d0
  5369.     lsl.l #3,d1
  5370.  
  5371.     or.l (a4,d0),d3
  5372.     or.w 4(a4,d0),d4
  5373.  
  5374. ;        lsl.l #2,d3
  5375. ;        lsl.l #2,d4
  5376.  
  5377.  
  5378.     or.l (a3,d1),d3
  5379.     or.w 4(a3,d1),d4
  5380.  
  5381.  
  5382.     clr.l d1
  5383.     move.l (a0)+,d0
  5384.     move.w d0,d1    
  5385.     clr.w d0
  5386.     swap d0
  5387.     lsl.l #3,d0
  5388.     lsl.l #3,d1
  5389.     move.l (a5,d0),d5
  5390.     move.w 4(a5,d0),d6
  5391.  
  5392.         lsl.l #2,d5
  5393.         lsl.w #2,d6
  5394.  
  5395.  
  5396.     or.l (a5,d1),d5
  5397.     or.w 4(a5,d1),d6
  5398. ;        lsl.l #2,d5
  5399. ;        lsl.l #2,d6
  5400.  
  5401.     clr.l d1
  5402.     move.l (a0)+,d0
  5403.     move.w d0,d1    
  5404.     clr.w d0
  5405.     swap d0
  5406.     lsl.l #3,d0
  5407.     lsl.l #3,d1
  5408.  
  5409.     or.l (a4,d0),d5
  5410.     or.w 4(a4,d0),d6
  5411.  
  5412. ;        lsl.l #2,d5
  5413. ;        lsl.l #2,d6
  5414.  
  5415.     or.l (a3,d1),d5
  5416.     or.w 4(a3,d1),d6
  5417.  
  5418.     move.l d3,d0        
  5419.     move.l d5,d1
  5420.  
  5421.     and.l d2,d0
  5422.     and.l d2,d1
  5423.  
  5424.     eor.l d0,d3
  5425.     eor.l d1,d5
  5426.  
  5427.     lsr.l #8,d1
  5428.     or.l d1,d0        ; d0 = A1a2c1c2
  5429.  
  5430.         move.l d0,(a1)+        
  5431.  
  5432.         lsl.l #8,d3
  5433.  
  5434.  
  5435.     move.w d4,d0        ;----e1f1
  5436.     swap d4            ;e1f1----
  5437.  
  5438.         or.l d5,d3
  5439.  
  5440.  
  5441.     move.w d6,d4        ;e1f1e2f2
  5442.  
  5443.  
  5444.  
  5445.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  5446.  
  5447.  
  5448.     rol.w #8,d4        ;e1f1f2e2
  5449.     move.b d4,d0        ;----e1e2
  5450.     lsl.l #8,d4        ;f1f2e2--
  5451.     move.w d0,d4        ;f1f2e1e2
  5452.     
  5453.  
  5454.     dbf d7,Pllb_C2p_6bit_1_5Meg_1by1_lp
  5455.  
  5456.     move.l d4,(a1)+        ; write final 32bits
  5457.  
  5458.     rts
  5459.  
  5460.  
  5461. Pllb_C2p_6bit_1_5Meg_1by1_APEND:
  5462.  
  5463.  
  5464.  
  5465.  
  5466.  
  5467.  
  5468. ;    -    -    -    -    -    -    -    -    -
  5469.  
  5470. ;               >> NORMAL 64colour Pllb-C2P <<
  5471.  
  5472. ;                Single pixel Width
  5473.  
  5474. ;                2meg fastram version
  5475.  
  5476. ;    -    -    -    -    -    -    -    -    -
  5477.  
  5478. Pllb_C2p_6bit_2Meg_1by1:
  5479.  
  5480.     bsr Pllb_c2p_init_Normal_c2p_registers
  5481.  
  5482.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  5483.  
  5484.  
  5485. Pllb_C2p_6bit_2Meg_1by1_AP:
  5486.  
  5487.     clr.l d1
  5488.     move.l (a0)+,d0
  5489.     move.w d0,d1    
  5490.     clr.w d0
  5491.     bra.b Pllb_C2p_6bit_2Meg_1by1_skip
  5492.     nop
  5493.     nop
  5494.     nop
  5495.  
  5496. Pllb_C2p_6bit_2Meg_1by1_lp:
  5497.  
  5498.     clr.l d1
  5499.     move.l (a0)+,d0
  5500.     move.w d0,d1    
  5501.     clr.w d0
  5502.  
  5503.         move.l d4,(a1)+
  5504.  
  5505. Pllb_C2p_6bit_2Meg_1by1_skip:
  5506.  
  5507.     swap d0
  5508.     lsl.l #3,d0
  5509.  
  5510.     move.l (a6,d0),d3
  5511.     move.w 4(a6,d0),d4
  5512.  
  5513. ;        lsl.l #2,d3
  5514. ;        lsl.l #2,d4
  5515.  
  5516.  
  5517.     lsl.l #3,d1
  5518.     or.l (a5,d1),d3
  5519.     or.w 4(a5,d1),d4
  5520.  
  5521. ;        lsl.l #2,d3
  5522. ;        lsl.l #2,d4
  5523.  
  5524.  
  5525.     clr.l d1
  5526.     move.l (a0)+,d0
  5527.     move.w d0,d1    
  5528.     clr.w d0
  5529.     swap d0
  5530.     lsl.l #3,d0
  5531.     lsl.l #3,d1
  5532.  
  5533.     or.l (a4,d0),d3
  5534.     or.w 4(a4,d0),d4
  5535.  
  5536. ;        lsl.l #2,d3
  5537. ;        lsl.l #2,d4
  5538.  
  5539.  
  5540.     or.l (a3,d1),d3
  5541.     or.w 4(a3,d1),d4
  5542.  
  5543.  
  5544.     clr.l d1
  5545.     move.l (a0)+,d0
  5546.     move.w d0,d1    
  5547.     clr.w d0
  5548.     swap d0
  5549.     lsl.l #3,d0
  5550.  
  5551.     move.l (a6,d0),d5
  5552.     move.w 4(a6,d0),d6
  5553. ;        lsl.l #2,d5
  5554. ;        lsl.l #2,d6
  5555.  
  5556.  
  5557.     lsl.l #3,d1
  5558.     or.l (a5,d1),d5
  5559.     or.w 4(a5,d1),d6
  5560. ;        lsl.l #2,d5
  5561. ;        lsl.l #2,d6
  5562.  
  5563.     clr.l d1
  5564.     move.l (a0)+,d0
  5565.     move.w d0,d1    
  5566.     clr.w d0
  5567.     swap d0
  5568.     lsl.l #3,d0
  5569.     lsl.l #3,d1
  5570.  
  5571.     or.l (a4,d0),d5
  5572.     or.w 4(a4,d0),d6
  5573.  
  5574. ;        lsl.l #2,d5
  5575. ;        lsl.l #2,d6
  5576.  
  5577.     or.l (a3,d1),d5
  5578.     or.w 4(a3,d1),d6
  5579.  
  5580.     move.l d3,d0        
  5581.     move.l d5,d1
  5582.  
  5583.     and.l d2,d0
  5584.     and.l d2,d1
  5585.  
  5586.     eor.l d0,d3
  5587.     eor.l d1,d5
  5588.  
  5589.     lsr.l #8,d1
  5590.     or.l d1,d0        ; d0 = A1a2c1c2
  5591.  
  5592.         move.l d0,(a1)+        
  5593.  
  5594.         lsl.l #8,d3
  5595.  
  5596.  
  5597.     move.w d4,d0        ;----e1f1
  5598.     swap d4            ;e1f1----
  5599.  
  5600.         or.l d5,d3
  5601.  
  5602.  
  5603.     move.w d6,d4        ;e1f1e2f2
  5604.  
  5605.  
  5606.  
  5607.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  5608.  
  5609.  
  5610.  
  5611.     rol.w #8,d4        ;e1f1f2e2
  5612.     move.b d4,d0        ;----e1e2
  5613.     lsl.l #8,d4        ;f1f2e2--
  5614.     move.w d0,d4        ;f1f2e1e2
  5615.     
  5616.  
  5617.     dbf d7,Pllb_C2p_6bit_2Meg_1by1_lp
  5618.  
  5619.     move.l d4,(a1)+        ; write final 32bits
  5620.  
  5621.     rts
  5622.  
  5623.  
  5624.  
  5625. Pllb_C2p_6bit_2Meg_1by1_APEND:
  5626.  
  5627.  
  5628.  
  5629. ; ----------------------------------------------------------------------------
  5630. ; ----------------------------------------------------------------------------
  5631. ; ----------------------------------------------------------------------------
  5632. ; ------------------------------DELTA 6bit Version----------------------------
  5633. ; ----------------------------------------------------------------------------
  5634. ; ----------------------------------------------------------------------------
  5635. ; ----------------------------------------------------------------------------
  5636.  
  5637.  
  5638.  
  5639.  
  5640. ;    -    -    -    -    -    -    -    -    -
  5641.  
  5642. ;              >> DELTA 64 colour Pllb-C2P <<
  5643.  
  5644. ;                Single pixel Width
  5645.  
  5646. ;               512k fastram version
  5647.  
  5648. ;    -    -    -    -    -    -    -    -    -
  5649.  
  5650.  
  5651.  
  5652. Pllb_C2p_Delta_6bit_512k_1by1:
  5653.  
  5654.     bsr Pllb_c2p_init_DELTA_c2p_registers
  5655.  
  5656.     ; a5/ a6    tables are not needed
  5657.  
  5658.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  5659.  
  5660.  
  5661. Pllb_C2p_Delta_6bit_512k_1by1_AP:
  5662.  
  5663. Pllb_C2p_Delta_6bit_512k_1by1_LP:
  5664.  
  5665.     move.l (a0)+,d4
  5666.     move.l (a0)+,d5
  5667.     move.l (a0)+,d6
  5668.     move.l (a0)+,d0
  5669.  
  5670.  
  5671.     cmp.l (a1)+,d4
  5672.     bne.b Pllb_C2p_Delta_6bit_512k_1by1_Cont4
  5673.     cmp.l (a1)+,d5
  5674.     bne.b Pllb_C2p_Delta_6bit_512k_1by1_Cont3
  5675.     cmp.l (a1)+,d6
  5676.     bne.b Pllb_C2p_Delta_6bit_512k_1by1_Cont2
  5677.     cmp.l (a1)+,d0
  5678.     bne.b Pllb_C2p_Delta_6bit_512k_1by1_Cont1
  5679.  
  5680.         add.w #12,a2
  5681.  
  5682.         dbf d7,Pllb_C2p_Delta_6bit_512k_1by1_LP
  5683.  
  5684.     rts
  5685. ;    nop
  5686.  
  5687.  
  5688. Pllb_C2p_Delta_6bit_512k_1by1_Cont4:
  5689.  
  5690.     addq.l #4,a1
  5691.  
  5692. Pllb_C2p_Delta_6bit_512k_1by1_Cont3:
  5693.  
  5694.     addq.l #4,a1
  5695.  
  5696. Pllb_C2p_Delta_6bit_512k_1by1_Cont2:
  5697.     addq.l #4,a1
  5698.  
  5699. Pllb_C2p_Delta_6bit_512k_1by1_Cont1:
  5700.  
  5701.     ; d0 = bytes ABCD
  5702.  
  5703.     clr.l d1
  5704.     move.w d4,d1    
  5705.     clr.w d4
  5706.     swap d4
  5707.     lsl.l #3,d4
  5708.     lsl.l #3,d1
  5709.  
  5710.     move.l (a3,d4),d3
  5711.     move.w 4(a3,d4),d4
  5712.  
  5713.         lsl.l #2,d3
  5714.         lsl.w #2,d4
  5715.  
  5716.  
  5717.     or.l (a3,d1),d3
  5718.     or.w 4(a3,d1),d4
  5719.  
  5720.         lsl.l #2,d3
  5721.         lsl.w #2,d4
  5722.  
  5723.     clr.l d1
  5724.             ;    move.l (a0)+,d0
  5725.     move.w d5,d1    
  5726.     clr.w d5
  5727.     swap d5
  5728.     lsl.l #3,d5
  5729.  
  5730.     or.l (a3,d5),d3
  5731.     or.w 4(a3,d5),d4
  5732.         lsl.l #2,d3
  5733.         lsl.w #2,d4
  5734.  
  5735.  
  5736.     lsl.l #3,d1
  5737.     or.l (a3,d1),d3
  5738.     or.w 4(a3,d1),d4
  5739.  
  5740.  
  5741.     clr.l d1
  5742.     move.w d6,d1    
  5743.     clr.w d6
  5744.     swap d6
  5745.     lsl.l #3,d6
  5746.  
  5747.     move.l (a3,d6),d5
  5748.     move.w 4(a3,d6),d6
  5749.         lsl.l #2,d5
  5750.         lsl.w #2,d6
  5751.  
  5752.  
  5753.     lsl.l #3,d1
  5754.     or.l (a3,d1),d5
  5755.     or.w 4(a3,d1),d6
  5756.           lsl.l #2,d5
  5757.         lsl.w #2,d6
  5758.  
  5759.  
  5760.     clr.l d1
  5761.     move.w d0,d1    
  5762.     clr.w d0
  5763.     swap d0
  5764.     lsl.l #3,d0
  5765.  
  5766.     or.l (a3,d0),d5
  5767.     or.w 4(a3,d0),d6
  5768.  
  5769.         lsl.l #2,d5
  5770.         lsl.w #2,d6
  5771.  
  5772.     lsl.l #3,d1
  5773.     or.l (a3,d1),d5
  5774.     or.w 4(a3,d1),d6
  5775.  
  5776.  
  5777.     move.l d3,d0        
  5778.     move.l d5,d1
  5779.  
  5780.     and.l d2,d0
  5781.     and.l d2,d1
  5782.  
  5783.     eor.l d0,d3
  5784.     eor.l d1,d5
  5785.  
  5786.     lsr.l #8,d1
  5787.     or.l d1,d0        ; d0 = A1a2c1c2
  5788.  
  5789.         move.l d0,(a2)+        
  5790.  
  5791.  
  5792.         lsl.l #8,d3
  5793.  
  5794.  
  5795.     move.w d4,d0        ;----e1f1
  5796.     swap d4            ;e1f1----
  5797.  
  5798.         or.l d5,d3
  5799.  
  5800.  
  5801.     move.w d6,d4        ;e1f1e2f2
  5802.  
  5803.  
  5804.  
  5805.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  5806.  
  5807.  
  5808.  
  5809.     rol.w #8,d4        ;e1f1f2e2
  5810.     move.b d4,d0        ;----e1e2
  5811.     lsl.l #8,d4        ;f1f2e2--
  5812.     move.w d0,d4        ;f1f2e1e2
  5813.     
  5814.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  5815.  
  5816.     dbf d7,Pllb_C2p_Delta_6bit_512k_1by1_LP
  5817.     rts
  5818.  
  5819. Pllb_C2p_Delta_6bit_512k_1by1_APEND:
  5820.  
  5821.  
  5822.  
  5823.  
  5824.  
  5825.  
  5826.  
  5827.  
  5828. ;    -    -    -    -    -    -    -    -    -
  5829.  
  5830. ;              >> DELTA 64 colour Pllb-C2P <<
  5831.  
  5832. ;                Single pixel Width
  5833.  
  5834. ;               1Meg fastram version
  5835.  
  5836. ;    -    -    -    -    -    -    -    -    -
  5837.  
  5838.  
  5839.  
  5840. Pllb_C2p_Delta_6bit_1Meg_1by1:
  5841.  
  5842.     bsr Pllb_c2p_init_DELTA_c2p_registers
  5843.  
  5844.     ; a5/ a6    tables are not needed
  5845.  
  5846.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  5847.  
  5848.  
  5849. Pllb_C2p_Delta_6bit_1Meg_1by1_AP:
  5850.  
  5851. Pllb_C2p_Delta_6bit_1Meg_1by1_LP:
  5852.  
  5853.     move.l (a0)+,d4
  5854.     move.l (a0)+,d5
  5855.     move.l (a0)+,d6
  5856.     move.l (a0)+,d0
  5857.  
  5858.  
  5859.     cmp.l (a1)+,d4
  5860.     bne.b Pllb_C2p_Delta_6bit_1Meg_1by1_Cont4
  5861.     cmp.l (a1)+,d5
  5862.     bne.b Pllb_C2p_Delta_6bit_1Meg_1by1_Cont3
  5863.     cmp.l (a1)+,d6
  5864.     bne.b Pllb_C2p_Delta_6bit_1Meg_1by1_Cont2
  5865.     cmp.l (a1)+,d0
  5866.     bne.b Pllb_C2p_Delta_6bit_1Meg_1by1_Cont1
  5867.  
  5868.         add.w #12,a2
  5869.     
  5870.  
  5871.         dbf d7,Pllb_C2p_Delta_6bit_1Meg_1by1_LP
  5872.  
  5873.     rts
  5874. ;    nop
  5875.  
  5876.  
  5877. Pllb_C2p_Delta_6bit_1Meg_1by1_Cont4:
  5878.  
  5879.     addq.l #4,a1
  5880.  
  5881. Pllb_C2p_Delta_6bit_1Meg_1by1_Cont3:
  5882.  
  5883.     addq.l #4,a1
  5884.  
  5885. Pllb_C2p_Delta_6bit_1Meg_1by1_Cont2:
  5886.     addq.l #4,a1
  5887.  
  5888. Pllb_C2p_Delta_6bit_1Meg_1by1_Cont1:
  5889.  
  5890.     ; d0 = bytes ABCD
  5891.  
  5892.     clr.l d1
  5893.     move.w d4,d1    
  5894.     clr.w d4
  5895.     swap d4
  5896.     lsl.l #3,d4
  5897.     lsl.l #3,d1
  5898.  
  5899.     move.l (a4,d4),d3
  5900.     move.w 4(a4,d4),d4
  5901.  
  5902.         lsl.l #2,d3
  5903.         lsl.w #2,d4
  5904.  
  5905.  
  5906.     or.l (a4,d1),d3
  5907.     or.w 4(a4,d1),d4
  5908.  
  5909.         lsl.l #2,d3
  5910.         lsl.w #2,d4
  5911.  
  5912.     clr.l d1
  5913.     move.w d5,d1    
  5914.     clr.w d5
  5915.     swap d5
  5916.     lsl.l #3,d5
  5917.  
  5918.     or.l (a4,d5),d3
  5919.     or.w 4(a4,d5),d4
  5920.  
  5921.     lsl.l #3,d1
  5922.     or.l (a3,d1),d3
  5923.     or.w 4(a3,d1),d4
  5924.  
  5925.  
  5926.     clr.l d1
  5927.     move.w d6,d1    
  5928.     clr.w d6
  5929.     swap d6
  5930.     lsl.l #3,d6
  5931.  
  5932.     move.l (a4,d6),d5
  5933.     move.w 4(a4,d6),d6
  5934.         lsl.l #2,d5
  5935.         lsl.w #2,d6
  5936.  
  5937.  
  5938.     lsl.l #3,d1
  5939.     or.l (a4,d1),d5
  5940.     or.w 4(a4,d1),d6
  5941.           lsl.l #2,d5
  5942.         lsl.w #2,d6
  5943.  
  5944.  
  5945.     clr.l d1
  5946.         ;    move.l (a0)+,d0
  5947.     move.w d0,d1    
  5948.     clr.w d0
  5949.     swap d0
  5950.     lsl.l #3,d0
  5951.     lsl.l #3,d1
  5952.  
  5953.     or.l (a4,d0),d5
  5954.     or.w 4(a4,d0),d6
  5955.     or.l (a3,d1),d5
  5956.     or.w 4(a3,d1),d6
  5957.  
  5958.  
  5959.     move.l d3,d0        
  5960.     move.l d5,d1
  5961.  
  5962.     and.l d2,d0
  5963.     and.l d2,d1
  5964.  
  5965.     eor.l d0,d3
  5966.     eor.l d1,d5
  5967.  
  5968.     lsr.l #8,d1
  5969.     or.l d1,d0        ; d0 = A1a2c1c2
  5970.  
  5971.         move.l d0,(a2)+        
  5972.  
  5973.  
  5974.         lsl.l #8,d3
  5975.  
  5976.  
  5977.     move.w d4,d0        ;----e1f1
  5978.     swap d4            ;e1f1----
  5979.  
  5980.         or.l d5,d3
  5981.  
  5982.  
  5983.     move.w d6,d4        ;e1f1e2f2
  5984.  
  5985.  
  5986.  
  5987.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  5988.  
  5989.  
  5990.  
  5991.     rol.w #8,d4        ;e1f1f2e2
  5992.     move.b d4,d0        ;----e1e2
  5993.     lsl.l #8,d4        ;f1f2e2--
  5994.     move.w d0,d4        ;f1f2e1e2
  5995.     
  5996.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  5997.  
  5998.  
  5999.     dbf d7,Pllb_C2p_Delta_6bit_1Meg_1by1_LP
  6000.     rts
  6001.  
  6002.  
  6003. Pllb_C2p_Delta_6bit_1meg_1by1_APEND:
  6004.  
  6005.  
  6006.  
  6007.  
  6008.  
  6009.  
  6010. ;    -    -    -    -    -    -    -    -    -
  6011.  
  6012. ;              >> DELTA 64 colour Pllb-C2P <<
  6013.  
  6014. ;                Single pixel Width
  6015.  
  6016. ;               1.5Meg fastram version
  6017.  
  6018. ;    -    -    -    -    -    -    -    -    -
  6019.  
  6020.  
  6021.  
  6022. Pllb_C2p_Delta_6bit_1_5meg_1by1:
  6023.  
  6024.     bsr Pllb_c2p_init_DELTA_c2p_registers
  6025.  
  6026.     ; a6
  6027.  
  6028.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  6029.  
  6030.  
  6031. Pllb_C2p_Delta_6bit_1_5meg_1by1_AP:
  6032.  
  6033. Pllb_C2p_Delta_6bit_1_5meg_1by1_LP:
  6034.  
  6035.     move.l (a0)+,d4
  6036.     move.l (a0)+,d5
  6037.     move.l (a0)+,d6
  6038.     move.l (a0)+,d0
  6039.  
  6040.  
  6041.     cmp.l (a1)+,d4
  6042.     bne.b Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont4
  6043.     cmp.l (a1)+,d5
  6044.     bne.b Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont3
  6045.     cmp.l (a1)+,d6
  6046.     bne.b Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont2
  6047.     cmp.l (a1)+,d0
  6048.     bne.b Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont1
  6049.  
  6050.         add.w #12,a2
  6051.     
  6052.  
  6053.         dbf d7,Pllb_C2p_Delta_6bit_1_5meg_1by1_LP
  6054.  
  6055.     rts
  6056. ;    nop
  6057.  
  6058.  
  6059. Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont4:
  6060.  
  6061.     addq.l #4,a1
  6062.  
  6063. Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont3:
  6064.  
  6065.     addq.l #4,a1
  6066.  
  6067. Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont2:
  6068.     addq.l #4,a1
  6069.  
  6070. Pllb_C2p_Delta_6bit_1_5meg_1by1_Cont1:
  6071.  
  6072.     ; d0 = bytes ABCD
  6073.  
  6074.     clr.l d1
  6075.     move.w d4,d1    
  6076.     clr.w d4
  6077.     swap d4
  6078.     lsl.l #3,d4
  6079.     lsl.l #3,d1
  6080.  
  6081.     move.l (a5,d4),d3
  6082.     move.w 4(a5,d4),d4
  6083.  
  6084.         lsl.l #2,d3
  6085.         lsl.w #2,d4
  6086.  
  6087.  
  6088.     or.l (a5,d1),d3
  6089.     or.w 4(a5,d1),d4
  6090.  
  6091.     clr.l d1
  6092.     move.w d5,d1    
  6093.     clr.w d5
  6094.     swap d5
  6095.     lsl.l #3,d5
  6096.     lsl.l #3,d1
  6097.  
  6098.     or.l (a4,d5),d3
  6099.     or.w 4(a4,d5),d4
  6100.  
  6101.     or.l (a3,d1),d3
  6102.     or.w 4(a3,d1),d4
  6103.  
  6104.  
  6105.     clr.l d1
  6106.     move.w d6,d1    
  6107.     clr.w d6
  6108.     swap d6
  6109.     lsl.l #3,d6
  6110.  
  6111.     move.l (a5,d6),d5
  6112.     move.w 4(a5,d6),d6
  6113.         lsl.l #2,d5
  6114.         lsl.w #2,d6
  6115.  
  6116.     lsl.l #3,d1
  6117.     or.l (a5,d1),d5
  6118.     or.w 4(a5,d1),d6
  6119.  
  6120.  
  6121.     clr.l d1
  6122.     move.w d0,d1    
  6123.     clr.w d0
  6124.     swap d0
  6125.     lsl.l #3,d0
  6126.     lsl.l #3,d1
  6127.  
  6128.     or.l (a4,d0),d5
  6129.     or.w 4(a4,d0),d6
  6130.  
  6131.     or.l (a3,d1),d5
  6132.     or.w 4(a3,d1),d6
  6133.  
  6134.  
  6135.     move.l d3,d0        
  6136.     move.l d5,d1
  6137.  
  6138.     and.l d2,d0
  6139.     and.l d2,d1
  6140.  
  6141.     eor.l d0,d3
  6142.     eor.l d1,d5
  6143.  
  6144.     lsr.l #8,d1
  6145.     or.l d1,d0        ; d0 = A1a2c1c2
  6146.  
  6147.         move.l d0,(a2)+        
  6148.  
  6149.  
  6150.         lsl.l #8,d3
  6151.  
  6152.  
  6153.     move.w d4,d0        ;----e1f1
  6154.     swap d4            ;e1f1----
  6155.  
  6156.         or.l d5,d3
  6157.  
  6158.  
  6159.     move.w d6,d4        ;e1f1e2f2
  6160.  
  6161.  
  6162.  
  6163.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  6164.  
  6165.  
  6166.  
  6167.     rol.w #8,d4        ;e1f1f2e2
  6168.     move.b d4,d0        ;----e1e2
  6169.     lsl.l #8,d4        ;f1f2e2--
  6170.     move.w d0,d4        ;f1f2e1e2
  6171.     
  6172.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  6173.  
  6174.  
  6175.     dbf d7,Pllb_C2p_Delta_6bit_1_5meg_1by1_LP
  6176.     rts
  6177.  
  6178.  
  6179. Pllb_C2p_Delta_6bit_1_5meg_1by1_APEND:
  6180.  
  6181.  
  6182.  
  6183.  
  6184.  
  6185.  
  6186.  
  6187. ;    -    -    -    -    -    -    -    -    -
  6188.  
  6189. ;              >> DELTA 64 colour Pllb-C2P <<
  6190.  
  6191. ;                Single pixel Width
  6192.  
  6193. ;               2Meg fastram version
  6194.  
  6195. ;    -    -    -    -    -    -    -    -    -
  6196.  
  6197.  
  6198.  
  6199. Pllb_C2p_Delta_6bit_2meg_1by1:
  6200.  
  6201.     bsr Pllb_c2p_init_DELTA_c2p_registers
  6202.  
  6203.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  6204.  
  6205.  
  6206. Pllb_C2p_Delta_6bit_2meg_1by1_AP:
  6207.  
  6208. Pllb_C2p_Delta_6bit_2meg_1by1_LP:
  6209.  
  6210.     move.l (a0)+,d4
  6211.     move.l (a0)+,d5
  6212.     move.l (a0)+,d6
  6213.     move.l (a0)+,d0
  6214.  
  6215.  
  6216.     cmp.l (a1)+,d4
  6217.     bne.b Pllb_C2p_Delta_6bit_2meg_1by1_Cont4
  6218.     cmp.l (a1)+,d5
  6219.     bne.b Pllb_C2p_Delta_6bit_2meg_1by1_Cont3
  6220.     cmp.l (a1)+,d6
  6221.     bne.b Pllb_C2p_Delta_6bit_2meg_1by1_Cont2
  6222.     cmp.l (a1)+,d0
  6223.     bne.b Pllb_C2p_Delta_6bit_2meg_1by1_Cont1
  6224.  
  6225.         add.w #12,a2
  6226.     
  6227.  
  6228.         dbf d7,Pllb_C2p_Delta_6bit_2meg_1by1_LP
  6229.  
  6230.     rts
  6231.     nop
  6232.  
  6233.  
  6234. Pllb_C2p_Delta_6bit_2meg_1by1_Cont4:
  6235.  
  6236.     addq.l #4,a1
  6237.  
  6238. Pllb_C2p_Delta_6bit_2meg_1by1_Cont3:
  6239.  
  6240.     addq.l #4,a1
  6241.  
  6242. Pllb_C2p_Delta_6bit_2meg_1by1_Cont2:
  6243.     addq.l #4,a1
  6244.  
  6245. Pllb_C2p_Delta_6bit_2meg_1by1_Cont1:
  6246.  
  6247.     ; d0 = bytes ABCD
  6248.  
  6249.     clr.l d1
  6250.     move.w d4,d1    
  6251.     clr.w d4
  6252.  
  6253.     swap d4
  6254.     lsl.l #3,d4
  6255.  
  6256.     move.l (a6,d4),d3
  6257.     move.w 4(a6,d4),d4
  6258.  
  6259. ;        lsl.l #2,d3
  6260. ;        lsl.w #2,d4
  6261.  
  6262.  
  6263.     lsl.l #3,d1
  6264.     or.l (a5,d1),d3
  6265.     or.w 4(a5,d1),d4
  6266.  
  6267. ;        lsl.l #2,d3
  6268. ;        lsl.w #2,d4
  6269.  
  6270.     clr.l d1
  6271.             ;    move.l (a0)+,d0
  6272.     move.w d5,d1    
  6273.     clr.w d5
  6274.     swap d5
  6275.     lsl.l #3,d5
  6276.  
  6277.     or.l (a4,d5),d3
  6278.     or.w 4(a4,d5),d4
  6279. ;        lsl.l #2,d3
  6280. ;        lsl.w #2,d4
  6281.  
  6282.  
  6283.     lsl.l #3,d1
  6284.     or.l (a3,d1),d3
  6285.     or.w 4(a3,d1),d4
  6286.  
  6287.  
  6288. ; store 8 planar bytes
  6289.  
  6290.  
  6291.     ; d0 = bytes ABCD
  6292.  
  6293.  
  6294.     clr.l d1
  6295.         ;    move.l (a0)+,d0
  6296.     move.w d6,d1    
  6297.     clr.w d6
  6298.     swap d6
  6299.     lsl.l #3,d6
  6300.  
  6301.     move.l (a6,d6),d5
  6302.     move.w 4(a6,d6),d6
  6303. ;        lsl.l #2,d5
  6304. ;        lsl.w #2,d6
  6305.  
  6306.  
  6307.     lsl.l #3,d1
  6308.     or.l (a5,d1),d5
  6309.     or.w 4(a5,d1),d6
  6310.   ;        lsl.l #2,d5
  6311. ;        lsl.w #2,d6
  6312.  
  6313.  
  6314.     clr.l d1
  6315.         ;    move.l (a0)+,d0
  6316.     move.w d0,d1    
  6317.     clr.w d0
  6318.     swap d0
  6319.     lsl.l #3,d0
  6320.  
  6321.     or.l (a4,d0),d5
  6322.     or.w 4(a4,d0),d6
  6323.  
  6324. ;        lsl.l #2,d5
  6325. ;        lsl.w #2,d6
  6326.  
  6327.     lsl.l #3,d1
  6328.     or.l (a3,d1),d5
  6329.     or.w 4(a3,d1),d6
  6330.  
  6331.  
  6332.     move.l d3,d0        
  6333.     move.l d5,d1
  6334.  
  6335.     and.l d2,d0
  6336.     and.l d2,d1
  6337.  
  6338.     eor.l d0,d3
  6339.     eor.l d1,d5
  6340.  
  6341.     lsr.l #8,d1
  6342.     or.l d1,d0        ; d0 = A1a2c1c2
  6343.  
  6344.         move.l d0,(a2)+        
  6345.  
  6346.  
  6347.         lsl.l #8,d3
  6348.  
  6349.  
  6350.     move.w d4,d0        ;----e1f1
  6351.     swap d4            ;e1f1----
  6352.  
  6353.         or.l d5,d3
  6354.  
  6355.  
  6356.     move.w d6,d4        ;e1f1e2f2
  6357.  
  6358.  
  6359.  
  6360.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  6361.  
  6362.  
  6363.  
  6364.     rol.w #8,d4        ;e1f1f2e2
  6365.     move.b d4,d0        ;----e1e2
  6366.     lsl.l #8,d4        ;f1f2e2--
  6367.     move.w d0,d4        ;f1f2e1e2
  6368.     
  6369.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  6370.  
  6371.  
  6372.     dbf d7,Pllb_C2p_Delta_6bit_2meg_1by1_LP
  6373.     rts
  6374.  
  6375.  
  6376. Pllb_C2p_Delta_6bit_2meg_1by1_APEND:
  6377.  
  6378.  
  6379.  
  6380.  
  6381.  
  6382.  
  6383.  
  6384.  
  6385. ;---------------------------------------------------------------------------
  6386. ;---------------------------------------------------------------------------
  6387. ;---------------------------------------------------------------------------
  6388. ;----------------------------NULLSKIP VERSIONS------------------------------
  6389. ;---------------------------------------------------------------------------
  6390. ;---------------------------------------------------------------------------
  6391. ;---------------------------------------------------------------------------
  6392.  
  6393. ;    -    -    -    -    -    -    -    -    -
  6394.  
  6395. ;            >> NULLSKIP/CLEAR 64 colour Pllb-C2P <<
  6396.  
  6397. ;                Single pixel Width
  6398.  
  6399. ;               512k fastram version
  6400.  
  6401. ;    -    -    -    -    -    -    -    -    -
  6402.  
  6403.  
  6404. Pllb_C2p_NullSkip_6bit_512k_1by1:
  6405.  
  6406.  
  6407.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  6408.  
  6409.     ; a4,a5,a6 tables are NOT USED
  6410.  
  6411.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  6412.  
  6413.  
  6414. Pllb_C2p_NullSkip_6bit_512k_1by1_AP:
  6415.  
  6416.  
  6417. Pllb_C2p_NullSkip_6bit_512k_1by1_LP:
  6418.  
  6419.     move.l (a0)+,d4
  6420.     bne.b Pllb_C2p_NullSkip_6bit_512k_1by1_Cont4
  6421.     move.l (a0)+,d5
  6422.     bne.b Pllb_C2p_NullSkip_6bit_512k_1by1_Cont3
  6423.     move.l (a0)+,d6
  6424.     bne.b Pllb_C2p_NullSkip_6bit_512k_1by1_Cont2
  6425.     move.l (a0)+,d0
  6426.     bne.b Pllb_C2p_NullSkip_6bit_512k_1by1_Cont1
  6427.  
  6428.         clr.l (a2)+
  6429.         add.w #16,a1
  6430.         clr.l (a2)+
  6431.         clr.l (a2)+
  6432.  
  6433.         dbf d7,Pllb_C2p_NullSkip_6bit_512k_1by1_LP
  6434.  
  6435.  
  6436.     rts
  6437.     nop
  6438.  
  6439. Pllb_C2p_NullSkip_6bit_512k_1by1_Cont4:
  6440.  
  6441.     move.l (a0)+,d5
  6442.  
  6443. Pllb_C2p_NullSkip_6bit_512k_1by1_Cont3:
  6444.  
  6445.     move.l (a0)+,d6
  6446.  
  6447. Pllb_C2p_NullSkip_6bit_512k_1by1_Cont2:
  6448.  
  6449.     move.l (a0)+,d0
  6450.  
  6451. Pllb_C2p_NullSkip_6bit_512k_1by1_Cont1:
  6452.  
  6453.         clr.l (a1)+        ; clear 4 source chunky pixels
  6454.  
  6455.     clr.l d1
  6456.     move.w d4,d1    
  6457.     clr.w d4
  6458.     swap d4
  6459.     lsl.l #3,d4
  6460.  
  6461.     move.l (a3,d4),d3
  6462.     move.w 4(a3,d4),d4
  6463.  
  6464.         lsl.l #2,d3
  6465.         lsl.w #2,d4
  6466.  
  6467.  
  6468.     lsl.l #3,d1
  6469.     or.l (a3,d1),d3
  6470.     or.w 4(a3,d1),d4
  6471.  
  6472.         lsl.l #2,d3
  6473.         lsl.w #2,d4
  6474.  
  6475.  
  6476.     clr.l (a1)+        ; clear 4 source chunky pixels
  6477.  
  6478.  
  6479.     clr.l d1
  6480.             ;    move.l (a0)+,d0
  6481.     move.w d5,d1    
  6482.     clr.w d5
  6483.     swap d5
  6484.     lsl.l #3,d5
  6485.  
  6486.     or.l (a3,d5),d3
  6487.     or.w 4(a3,d5),d4
  6488.         lsl.l #2,d3
  6489.         lsl.w #2,d4
  6490.  
  6491.     lsl.l #3,d1
  6492.     or.l (a3,d1),d3
  6493.     or.w 4(a3,d1),d4
  6494.  
  6495.         clr.l (a1)+        ; clear 4 source chunky pixels
  6496.  
  6497.     clr.l d1
  6498.     move.w d6,d1    
  6499.     clr.w d6
  6500.     swap d6
  6501.     lsl.l #3,d6
  6502.     lsl.l #3,d1
  6503.  
  6504.     move.l (a3,d6),d5
  6505.     move.w 4(a3,d6),d6
  6506.         lsl.l #2,d5
  6507.         lsl.w #2,d6
  6508.  
  6509.     or.l (a3,d1),d5
  6510.     or.w 4(a3,d1),d6
  6511.           lsl.l #2,d5
  6512.         lsl.w #2,d6
  6513.  
  6514.     clr.l d1
  6515.     move.w d0,d1    
  6516.     clr.w d0
  6517.     swap d0
  6518.     lsl.l #3,d0
  6519.     lsl.l #3,d1
  6520.     or.l (a3,d0),d5
  6521.     or.w 4(a3,d0),d6
  6522.  
  6523.           lsl.l #2,d5
  6524.         lsl.w #2,d6
  6525.  
  6526.     or.l (a3,d1),d5
  6527.     or.w 4(a3,d1),d6
  6528.  
  6529.  
  6530.         clr.l (a1)+        ; clear 4 source chunky pixels
  6531.  
  6532.  
  6533.  
  6534.     move.l d3,d0        
  6535.     move.l d5,d1
  6536.  
  6537.     and.l d2,d0
  6538.     and.l d2,d1
  6539.  
  6540.     eor.l d0,d3
  6541.     eor.l d1,d5
  6542.  
  6543.     lsr.l #8,d1
  6544.     or.l d1,d0        ; d0 = A1a2c1c2
  6545.  
  6546.         move.l d0,(a2)+        
  6547.  
  6548.  
  6549.         lsl.l #8,d3
  6550.  
  6551.  
  6552.     move.w d4,d0        ;----e1f1
  6553.     swap d4            ;e1f1----
  6554.  
  6555.         or.l d5,d3
  6556.  
  6557.  
  6558.     move.w d6,d4        ;e1f1e2f2
  6559.  
  6560.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  6561.  
  6562.     rol.w #8,d4        ;e1f1f2e2
  6563.     move.b d4,d0        ;----e1e2
  6564.     lsl.l #8,d4        ;f1f2e2--
  6565.     move.w d0,d4        ;f1f2e1e2
  6566.     
  6567.  
  6568.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  6569.  
  6570.     dbf d7,Pllb_C2p_NullSkip_6bit_512k_1by1_LP
  6571.     rts
  6572.  
  6573.  
  6574. Pllb_C2p_NullSkip_6bit_512k_1by1_APEND:
  6575.  
  6576.  
  6577.  
  6578.  
  6579. ;    -    -    -    -    -    -    -    -    -
  6580.  
  6581. ;            >> NULLSKIP/CLEAR 64 colour Pllb-C2P <<
  6582.  
  6583. ;                Single pixel Width
  6584.  
  6585. ;               1Meg fastram version
  6586.  
  6587. ;    -    -    -    -    -    -    -    -    -
  6588.  
  6589.  
  6590. Pllb_C2p_NullSkip_6bit_1meg_1by1:
  6591.  
  6592.  
  6593.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  6594.  
  6595.     ; a5,a6 tables are NOT USED
  6596.  
  6597.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  6598.  
  6599.  
  6600. Pllb_C2p_NullSkip_6bit_1meg_1by1_AP:
  6601.  
  6602.  
  6603. Pllb_C2p_NullSkip_6bit_1meg_1by1_LP:
  6604.  
  6605.     move.l (a0)+,d4
  6606.     bne.b Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont4
  6607.     move.l (a0)+,d5
  6608.     bne.b Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont3
  6609.     move.l (a0)+,d6
  6610.     bne.b Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont2
  6611.     move.l (a0)+,d0
  6612.     bne.b Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont1
  6613.  
  6614.         clr.l (a2)+
  6615.         add.w #16,a1
  6616.         clr.l (a2)+
  6617.         clr.l (a2)+
  6618.         dbf d7,Pllb_C2p_NullSkip_6bit_1meg_1by1_LP
  6619.  
  6620.  
  6621.     rts
  6622.     nop
  6623.  
  6624. Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont4:
  6625.  
  6626.     move.l (a0)+,d5
  6627.  
  6628. Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont3:
  6629.  
  6630.     move.l (a0)+,d6
  6631.  
  6632. Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont2:
  6633.  
  6634.     move.l (a0)+,d0
  6635.  
  6636. Pllb_C2p_NullSkip_6bit_1meg_1by1_Cont1:
  6637.  
  6638.         clr.l (a1)+        ; clear 4 source chunky pixels
  6639.  
  6640.     ; d0 = bytes ABCD
  6641.  
  6642.     clr.l d1
  6643.     move.w d4,d1    
  6644.     clr.w d4
  6645.     swap d4
  6646.     lsl.l #3,d4
  6647.  
  6648.     move.l (a4,d4),d3
  6649.     move.w 4(a4,d4),d4
  6650.  
  6651.         lsl.l #2,d3
  6652.         lsl.w #2,d4
  6653.  
  6654.  
  6655.     lsl.l #3,d1
  6656.     or.l (a4,d1),d3
  6657.     or.w 4(a4,d1),d4
  6658.  
  6659.         lsl.l #2,d3
  6660.         lsl.w #2,d4
  6661.  
  6662.         clr.l (a1)+        ; clear 4 source chunky pixels
  6663.  
  6664.  
  6665.     clr.l d1
  6666.             ;    move.l (a0)+,d0
  6667.     move.w d5,d1    
  6668.     clr.w d5
  6669.     swap d5
  6670.     lsl.l #3,d5
  6671.  
  6672.     or.l (a4,d5),d3
  6673.     or.w 4(a4,d5),d4
  6674.  
  6675.     lsl.l #3,d1
  6676.     or.l (a3,d1),d3
  6677.     or.w 4(a3,d1),d4
  6678.  
  6679.         clr.l (a1)+        ; clear 4 source chunky pixels
  6680.  
  6681.     clr.l d1
  6682.     move.w d6,d1    
  6683.     clr.w d6
  6684.     swap d6
  6685.     lsl.l #3,d6
  6686.  
  6687.     move.l (a4,d6),d5
  6688.     move.w 4(a4,d6),d6
  6689.         lsl.l #2,d5
  6690.         lsl.w #2,d6
  6691.  
  6692.  
  6693.     lsl.l #3,d1
  6694.     or.l (a4,d1),d5
  6695.     or.w 4(a4,d1),d6
  6696.           lsl.l #2,d5
  6697.         lsl.w #2,d6
  6698.  
  6699.     clr.l d1
  6700.     move.w d0,d1    
  6701.     clr.w d0
  6702.     swap d0
  6703.     lsl.l #3,d0
  6704.     lsl.l #3,d1
  6705.  
  6706.     or.l (a4,d0),d5
  6707.     or.w 4(a4,d0),d6
  6708.  
  6709.     or.l (a3,d1),d5
  6710.     or.w 4(a3,d1),d6
  6711.  
  6712.  
  6713.  
  6714.         clr.l (a1)+        ; clear 4 source chunky pixels
  6715.  
  6716.  
  6717.  
  6718.     move.l d3,d0        
  6719.     move.l d5,d1
  6720.  
  6721.     and.l d2,d0
  6722.     and.l d2,d1
  6723.  
  6724.     eor.l d0,d3
  6725.     eor.l d1,d5
  6726.  
  6727.     lsr.l #8,d1
  6728.     or.l d1,d0        ; d0 = A1a2c1c2
  6729.  
  6730.         move.l d0,(a2)+        
  6731.  
  6732.  
  6733.         lsl.l #8,d3
  6734.  
  6735.  
  6736.     move.w d4,d0        ;----e1f1
  6737.     swap d4            ;e1f1----
  6738.  
  6739.         or.l d5,d3
  6740.  
  6741.  
  6742.     move.w d6,d4        ;e1f1e2f2
  6743.  
  6744.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  6745.  
  6746.     rol.w #8,d4        ;e1f1f2e2
  6747.     move.b d4,d0        ;----e1e2
  6748.     lsl.l #8,d4        ;f1f2e2--
  6749.     move.w d0,d4        ;f1f2e1e2
  6750.     
  6751.  
  6752.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  6753.  
  6754.     dbf d7,Pllb_C2p_NullSkip_6bit_1meg_1by1_LP
  6755.     rts
  6756.  
  6757.  
  6758. Pllb_C2p_NullSkip_6bit_1meg_1by1_APEND:
  6759.  
  6760.  
  6761.  
  6762.  
  6763.  
  6764. ;    -    -    -    -    -    -    -    -    -
  6765.  
  6766. ;            >> NULLSKIP/CLEAR 64 colour Pllb-C2P <<
  6767.  
  6768. ;                Single pixel Width
  6769.  
  6770. ;               1.5Meg fastram version
  6771.  
  6772. ;    -    -    -    -    -    -    -    -    -
  6773.  
  6774.  
  6775. Pllb_C2p_NullSkip_6bit_1_5meg_1by1:
  6776.  
  6777.  
  6778.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  6779.  
  6780.     ; a6 tables are NOT USED
  6781.  
  6782.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  6783.  
  6784.  
  6785. Pllb_C2p_NullSkip_6bit_1_5meg_1by1_AP:
  6786.  
  6787.  
  6788. Pllb_C2p_NullSkip_6bit_1_5meg_1by1_LP:
  6789.  
  6790.     move.l (a0)+,d4
  6791.     bne.b Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont4
  6792.     move.l (a0)+,d5
  6793.     bne.b Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont3
  6794.     move.l (a0)+,d6
  6795.     bne.b Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont2
  6796.     move.l (a0)+,d0
  6797.     bne.b Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont1
  6798.  
  6799.         clr.l (a2)+
  6800.         add.w #16,a1
  6801.         clr.l (a2)+
  6802.         clr.l (a2)+
  6803.  
  6804.  
  6805.         dbf d7,Pllb_C2p_NullSkip_6bit_1_5meg_1by1_LP
  6806.  
  6807.  
  6808.     rts
  6809.     nop
  6810.  
  6811. Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont4:
  6812.  
  6813.     move.l (a0)+,d5
  6814.  
  6815. Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont3:
  6816.  
  6817.     move.l (a0)+,d6
  6818.  
  6819. Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont2:
  6820.  
  6821.     move.l (a0)+,d0
  6822.  
  6823. Pllb_C2p_NullSkip_6bit_1_5meg_1by1_Cont1:
  6824.  
  6825.         clr.l (a1)+        ; clear 4 source chunky pixels
  6826.  
  6827.     ; d0 = bytes ABCD
  6828.  
  6829.     clr.l d1
  6830.     move.w d4,d1    
  6831.     clr.w d4
  6832.     swap d4
  6833.     lsl.l #3,d4
  6834.  
  6835.     move.l (a5,d4),d3
  6836.     move.w 4(a5,d4),d4
  6837.  
  6838.         lsl.l #2,d3
  6839.         lsl.w #2,d4
  6840.  
  6841.  
  6842.     lsl.l #3,d1
  6843.     or.l (a5,d1),d3
  6844.     or.w 4(a5,d1),d4
  6845.  
  6846.  
  6847.         clr.l (a1)+        ; clear 4 source chunky pixels
  6848.  
  6849.  
  6850.     clr.l d1
  6851.     move.w d5,d1    
  6852.     clr.w d5
  6853.     swap d5
  6854.     lsl.l #3,d5
  6855.  
  6856.     or.l (a4,d5),d3
  6857.     or.w 4(a4,d5),d4
  6858.  
  6859.     lsl.l #3,d1
  6860.     or.l (a3,d1),d3
  6861.     or.w 4(a3,d1),d4
  6862.  
  6863.         clr.l (a1)+        ; clear 4 source chunky pixels
  6864.  
  6865.     clr.l d1
  6866.     move.w d6,d1    
  6867.     clr.w d6
  6868.     swap d6
  6869.     lsl.l #3,d6
  6870.  
  6871.     move.l (a5,d6),d5
  6872.     move.w 4(a5,d6),d6
  6873.         lsl.l #2,d5
  6874.         lsl.w #2,d6
  6875.  
  6876.  
  6877.     lsl.l #3,d1
  6878.     or.l (a5,d1),d5
  6879.     or.w 4(a5,d1),d6
  6880.  
  6881.     clr.l d1
  6882.     move.w d0,d1    
  6883.     clr.w d0
  6884.     swap d0
  6885.     lsl.l #3,d0
  6886.     lsl.l #3,d1
  6887.  
  6888.     or.l (a4,d0),d5
  6889.     or.w 4(a4,d0),d6
  6890.  
  6891.     or.l (a3,d1),d5
  6892.     or.w 4(a3,d1),d6
  6893.  
  6894.  
  6895.         clr.l (a1)+        ; clear 4 source chunky pixels
  6896.  
  6897.  
  6898.     move.l d3,d0        
  6899.     move.l d5,d1
  6900.  
  6901.     and.l d2,d0
  6902.     and.l d2,d1
  6903.  
  6904.     eor.l d0,d3
  6905.     eor.l d1,d5
  6906.  
  6907.     lsr.l #8,d1
  6908.     or.l d1,d0        ; d0 = A1a2c1c2
  6909.  
  6910.         move.l d0,(a2)+        
  6911.  
  6912.         lsl.l #8,d3
  6913.  
  6914.     move.w d4,d0        ;----e1f1
  6915.     swap d4            ;e1f1----
  6916.  
  6917.         or.l d5,d3
  6918.  
  6919.  
  6920.     move.w d6,d4        ;e1f1e2f2
  6921.  
  6922.  
  6923.  
  6924.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  6925.  
  6926.  
  6927.  
  6928.     rol.w #8,d4        ;e1f1f2e2
  6929.     move.b d4,d0        ;----e1e2
  6930.     lsl.l #8,d4        ;f1f2e2--
  6931.     move.w d0,d4        ;f1f2e1e2
  6932.     
  6933.  
  6934.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  6935.  
  6936.     dbf d7,Pllb_C2p_NullSkip_6bit_1_5meg_1by1_LP
  6937.     rts
  6938.  
  6939.  
  6940. Pllb_C2p_NullSkip_6bit_1_5meg_1by1_APEND:
  6941.  
  6942.  
  6943.  
  6944.  
  6945.  
  6946.  
  6947.  
  6948. ;    -    -    -    -    -    -    -    -    -
  6949.  
  6950. ;            >> NULLSKIP/CLEAR 64 colour Pllb-C2P <<
  6951.  
  6952. ;                Single pixel Width
  6953.  
  6954. ;               2Meg fastram version
  6955.  
  6956. ;    -    -    -    -    -    -    -    -    -
  6957.  
  6958.  
  6959. Pllb_C2p_NullSkip_6bit_2Meg_1by1:
  6960.  
  6961.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  6962.  
  6963.     ; a4,a5,d6 tables are NOT USED
  6964.  
  6965.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  6966.  
  6967.  
  6968. Pllb_C2p_NullSkip_6bit_2Meg_1by1_AP:
  6969.  
  6970.  
  6971. Pllb_C2p_NullSkip_6bit_2Meg_1by1_LP:
  6972.  
  6973.     move.l (a0)+,d4
  6974.     bne.b Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont4
  6975.     move.l (a0)+,d5
  6976.     bne.b Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont3
  6977.     move.l (a0)+,d6
  6978.     bne.b Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont2
  6979.     move.l (a0)+,d0
  6980.     bne.b Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont1
  6981.  
  6982.         clr.l (a2)+
  6983.         add.w #16,a1
  6984.         clr.l (a2)+
  6985.         clr.l (a2)+
  6986.         dbf d7,Pllb_C2p_NullSkip_6bit_2Meg_1by1_LP
  6987.  
  6988.  
  6989.     rts
  6990.     nop
  6991.  
  6992. Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont4:
  6993.  
  6994.     move.l (a0)+,d5
  6995.  
  6996. Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont3:
  6997.  
  6998.     move.l (a0)+,d6
  6999.  
  7000. Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont2:
  7001.  
  7002.     move.l (a0)+,d0
  7003.  
  7004. Pllb_C2p_NullSkip_6bit_2Meg_1by1_Cont1:
  7005.  
  7006.         clr.l (a1)+        ; clear 4 source chunky pixels
  7007.  
  7008.  
  7009.     clr.l d1
  7010.     move.w d4,d1    
  7011.     clr.w d4
  7012.     swap d4
  7013.     lsl.l #3,d4
  7014.     lsl.l #3,d1
  7015.  
  7016.     move.l (a6,d4),d3
  7017.     move.w 4(a6,d4),d4
  7018.  
  7019.     or.l (a5,d1),d3
  7020.     or.w 4(a5,d1),d4
  7021.  
  7022.         clr.l (a1)+        ; clear 4 source chunky pixels
  7023.  
  7024.  
  7025.     clr.l d1
  7026.     move.w d5,d1    
  7027.     clr.w d5
  7028.     swap d5
  7029.     lsl.l #3,d5
  7030.     lsl.l #3,d1
  7031.  
  7032.     or.l (a4,d5),d3
  7033.     or.w 4(a4,d5),d4
  7034.  
  7035.     or.l (a3,d1),d3
  7036.     or.w 4(a3,d1),d4
  7037.  
  7038.         clr.l (a1)+        ; clear 4 source chunky pixels
  7039.  
  7040.     clr.l d1
  7041.     move.w d6,d1    
  7042.     clr.w d6
  7043.     swap d6
  7044.     lsl.l #3,d6
  7045.     lsl.l #3,d1
  7046.  
  7047.     move.l (a6,d6),d5
  7048.     move.w 4(a6,d6),d6
  7049.  
  7050.     or.l (a5,d1),d5
  7051.     or.w 4(a5,d1),d6
  7052.     clr.l d1
  7053.     move.w d0,d1    
  7054.     clr.w d0
  7055.     swap d0
  7056.     lsl.l #3,d0
  7057.     lsl.l #3,d1
  7058.  
  7059.     or.l (a4,d0),d5
  7060.     or.w 4(a4,d0),d6
  7061.     or.l (a3,d1),d5
  7062.     or.w 4(a3,d1),d6
  7063.  
  7064.         clr.l (a1)+        ; clear 4 source chunky pixels
  7065.  
  7066.     move.l d3,d0        
  7067.     move.l d5,d1
  7068.  
  7069.     and.l d2,d0
  7070.     and.l d2,d1
  7071.  
  7072.     eor.l d0,d3
  7073.     eor.l d1,d5
  7074.  
  7075.     lsr.l #8,d1
  7076.     or.l d1,d0        ; d0 = A1a2c1c2
  7077.  
  7078.         move.l d0,(a2)+        
  7079.  
  7080.  
  7081.         lsl.l #8,d3
  7082.  
  7083.  
  7084.     move.w d4,d0        ;----e1f1
  7085.     swap d4            ;e1f1----
  7086.  
  7087.         or.l d5,d3
  7088.  
  7089.  
  7090.     move.w d6,d4        ;e1f1e2f2
  7091.  
  7092.  
  7093.  
  7094.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  7095.  
  7096.  
  7097.  
  7098.     rol.w #8,d4        ;e1f1f2e2
  7099.     move.b d4,d0        ;----e1e2
  7100.     lsl.l #8,d4        ;f1f2e2--
  7101.     move.w d0,d4        ;f1f2e1e2
  7102.     
  7103.  
  7104.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  7105.  
  7106.     dbf d7,Pllb_C2p_NullSkip_6bit_2Meg_1by1_LP
  7107.     rts
  7108.  
  7109.  
  7110. Pllb_C2p_NullSkip_6bit_2meg_1by1_APEND:
  7111.  
  7112.  
  7113.  
  7114.  
  7115.  
  7116.  
  7117.  
  7118.  
  7119.  
  7120.  
  7121.  
  7122.  
  7123. ;---------------------------------------------------------------------------
  7124. ;---------------------------------------------------------------------------
  7125. ;---------------------------------------------------------------------------
  7126. ;------------------------DELTA NULLSKIP VERSIONS----------------------------
  7127. ;---------------------------------------------------------------------------
  7128. ;---------------------------------------------------------------------------
  7129. ;---------------------------------------------------------------------------
  7130.  
  7131. ;    -    -    -    -    -    -    -    -    -
  7132.  
  7133. ;            >> DeltaNullSkip/CLEAR 64 colour Pllb-C2P <<
  7134.  
  7135. ;                Single pixel Width
  7136.  
  7137. ;               512k fastram version
  7138.  
  7139. ;    -    -    -    -    -    -    -    -    -
  7140.  
  7141.  
  7142. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1:
  7143.  
  7144.  
  7145.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  7146.  
  7147.  
  7148.     move.l #16,a5
  7149.  
  7150.     ; a4,a5,a6 tables are NOT USED
  7151.  
  7152.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  7153.  
  7154.  
  7155. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_AP:
  7156.  
  7157.  
  7158. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_LP:
  7159.  
  7160.     move.l (a0)+,d4
  7161.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont4
  7162.     move.l (a0)+,d5
  7163.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont3
  7164.     move.l (a0)+,d6
  7165.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont2
  7166.     move.l (a0)+,d0
  7167.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont1
  7168.  
  7169.     tst.b (a6)
  7170.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_nodelta
  7171.  
  7172.         add.l a5,a1
  7173.         add.w #12,a2
  7174.  
  7175.         addq.l #1,a6        
  7176.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_LP
  7177.     rts
  7178.  
  7179.  
  7180. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_nodelta:
  7181.  
  7182.         clr.l (a2)+
  7183.         add.l a5,a1
  7184.         clr.l (a2)+
  7185.         clr.l (a2)+
  7186.  
  7187.         clr.b (a6)+
  7188.         
  7189.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_LP
  7190.  
  7191.     rts
  7192.     nop
  7193.  
  7194. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont4:
  7195.  
  7196.     move.l (a0)+,d5
  7197.  
  7198. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont3:
  7199.  
  7200.     move.l (a0)+,d6
  7201.  
  7202. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont2:
  7203.  
  7204.     move.l (a0)+,d0
  7205.  
  7206. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_Cont1:
  7207.  
  7208.         clr.l (a1)+        ; clear 4 source chunky pixels
  7209.  
  7210.     clr.l d1
  7211.     move.w d4,d1    
  7212.     clr.w d4
  7213.  
  7214.         st.b (a6)+
  7215.  
  7216.  
  7217.     swap d4
  7218.     lsl.l #3,d4
  7219.  
  7220.     move.l (a3,d4),d3
  7221.     move.w 4(a3,d4),d4
  7222.  
  7223.         lsl.l #2,d3
  7224.         lsl.w #2,d4
  7225.  
  7226.  
  7227.     lsl.l #3,d1
  7228.     or.l (a3,d1),d3
  7229.     or.w 4(a3,d1),d4
  7230.  
  7231.         lsl.l #2,d3
  7232.         lsl.w #2,d4
  7233.  
  7234.  
  7235.     clr.l (a1)+        ; clear 4 source chunky pixels
  7236.  
  7237.  
  7238.     clr.l d1
  7239.             ;    move.l (a0)+,d0
  7240.     move.w d5,d1    
  7241.     clr.w d5
  7242.     swap d5
  7243.     lsl.l #3,d5
  7244.  
  7245.     or.l (a3,d5),d3
  7246.     or.w 4(a3,d5),d4
  7247.         lsl.l #2,d3
  7248.         lsl.w #2,d4
  7249.  
  7250.     lsl.l #3,d1
  7251.     or.l (a3,d1),d3
  7252.     or.w 4(a3,d1),d4
  7253.  
  7254.         clr.l (a1)+        ; clear 4 source chunky pixels
  7255.  
  7256.     clr.l d1
  7257.     move.w d6,d1    
  7258.     clr.w d6
  7259.     swap d6
  7260.     lsl.l #3,d6
  7261.     lsl.l #3,d1
  7262.  
  7263.     move.l (a3,d6),d5
  7264.     move.w 4(a3,d6),d6
  7265.         lsl.l #2,d5
  7266.         lsl.w #2,d6
  7267.  
  7268.     or.l (a3,d1),d5
  7269.     or.w 4(a3,d1),d6
  7270.           lsl.l #2,d5
  7271.         lsl.w #2,d6
  7272.  
  7273.     clr.l d1
  7274.     move.w d0,d1    
  7275.     clr.w d0
  7276.     swap d0
  7277.     lsl.l #3,d0
  7278.     lsl.l #3,d1
  7279.     or.l (a3,d0),d5
  7280.     or.w 4(a3,d0),d6
  7281.  
  7282.           lsl.l #2,d5
  7283.         lsl.w #2,d6
  7284.  
  7285.     or.l (a3,d1),d5
  7286.     or.w 4(a3,d1),d6
  7287.  
  7288.  
  7289.         clr.l (a1)+        ; clear 4 source chunky pixels
  7290.  
  7291.  
  7292.  
  7293.     move.l d3,d0        
  7294.     move.l d5,d1
  7295.  
  7296.     and.l d2,d0
  7297.     and.l d2,d1
  7298.  
  7299.     eor.l d0,d3
  7300.     eor.l d1,d5
  7301.  
  7302.     lsr.l #8,d1
  7303.     or.l d1,d0        ; d0 = A1a2c1c2
  7304.  
  7305.         move.l d0,(a2)+        
  7306.  
  7307.  
  7308.         lsl.l #8,d3
  7309.  
  7310.  
  7311.     move.w d4,d0        ;----e1f1
  7312.     swap d4            ;e1f1----
  7313.  
  7314.         or.l d5,d3
  7315.  
  7316.  
  7317.     move.w d6,d4        ;e1f1e2f2
  7318.  
  7319.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  7320.  
  7321.     rol.w #8,d4        ;e1f1f2e2
  7322.     move.b d4,d0        ;----e1e2
  7323.     lsl.l #8,d4        ;f1f2e2--
  7324.     move.w d0,d4        ;f1f2e1e2
  7325.     
  7326.  
  7327.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  7328.  
  7329.     dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_LP
  7330.     rts
  7331.  
  7332.  
  7333. Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_APEND:
  7334.  
  7335.  
  7336.  
  7337.  
  7338.  
  7339.  
  7340.  
  7341.  
  7342.  
  7343.  
  7344. ;    -    -    -    -    -    -    -    -    -
  7345.  
  7346. ;            >> DeltaNullSkip/CLEAR 64 colour Pllb-C2P <<
  7347.  
  7348. ;                Single pixel Width
  7349.  
  7350. ;               1Meg fastram version
  7351.  
  7352. ;    -    -    -    -    -    -    -    -    -
  7353.  
  7354.  
  7355. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1:
  7356.  
  7357.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  7358.  
  7359.     move.l #16,a5
  7360.  
  7361.     ; a5,a6 tables are NOT USED
  7362.  
  7363.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  7364.  
  7365.  
  7366. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_AP:
  7367.  
  7368.  
  7369. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_LP:
  7370.  
  7371.     move.l (a0)+,d4
  7372.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont4
  7373.     move.l (a0)+,d5
  7374.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont3
  7375.     move.l (a0)+,d6
  7376.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont2
  7377.     move.l (a0)+,d0
  7378.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont1
  7379.  
  7380.  
  7381.     tst.b (a6)
  7382.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1Meg_1by1_nodelta
  7383.  
  7384.         add.l a5,a1
  7385.         add.w #12,a2
  7386.  
  7387.         addq.l #1,a6        
  7388.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1Meg_1by1_LP
  7389.     rts
  7390.  
  7391.  
  7392. Pllb_C2p_DeltaNullSkip_6bit_1Meg_1by1_nodelta:
  7393.  
  7394.         clr.l (a2)+
  7395.         add.l a5,a1
  7396.         clr.l (a2)+
  7397.         clr.l (a2)+
  7398.  
  7399.         clr.b (a6)+
  7400.         
  7401.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1Meg_1by1_LP
  7402.  
  7403.     rts
  7404.     nop
  7405.  
  7406. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont4:
  7407.  
  7408.     move.l (a0)+,d5
  7409.  
  7410. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont3:
  7411.  
  7412.     move.l (a0)+,d6
  7413.  
  7414. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont2:
  7415.  
  7416.     move.l (a0)+,d0
  7417.  
  7418. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_Cont1:
  7419.  
  7420.         clr.l (a1)+        ; clear 4 source chunky pixels
  7421.  
  7422.     ; d0 = bytes ABCD
  7423.  
  7424.     clr.l d1
  7425.     move.w d4,d1    
  7426.  
  7427.     clr.w d4
  7428.  
  7429.         st.b (a6)+
  7430.  
  7431.     swap d4
  7432.     lsl.l #3,d4
  7433.  
  7434.     move.l (a4,d4),d3
  7435.     move.w 4(a4,d4),d4
  7436.  
  7437.         lsl.l #2,d3
  7438.         lsl.w #2,d4
  7439.  
  7440.  
  7441.     lsl.l #3,d1
  7442.     or.l (a4,d1),d3
  7443.     or.w 4(a4,d1),d4
  7444.  
  7445.         lsl.l #2,d3
  7446.         lsl.w #2,d4
  7447.  
  7448.         clr.l (a1)+        ; clear 4 source chunky pixels
  7449.  
  7450.  
  7451.     clr.l d1
  7452.             ;    move.l (a0)+,d0
  7453.     move.w d5,d1    
  7454.     clr.w d5
  7455.     swap d5
  7456.     lsl.l #3,d5
  7457.  
  7458.     or.l (a4,d5),d3
  7459.     or.w 4(a4,d5),d4
  7460.  
  7461.     lsl.l #3,d1
  7462.     or.l (a3,d1),d3
  7463.     or.w 4(a3,d1),d4
  7464.  
  7465.         clr.l (a1)+        ; clear 4 source chunky pixels
  7466.  
  7467.     clr.l d1
  7468.     move.w d6,d1    
  7469.     clr.w d6
  7470.     swap d6
  7471.     lsl.l #3,d6
  7472.  
  7473.     move.l (a4,d6),d5
  7474.     move.w 4(a4,d6),d6
  7475.         lsl.l #2,d5
  7476.         lsl.w #2,d6
  7477.  
  7478.  
  7479.     lsl.l #3,d1
  7480.     or.l (a4,d1),d5
  7481.     or.w 4(a4,d1),d6
  7482.           lsl.l #2,d5
  7483.         lsl.w #2,d6
  7484.  
  7485.     clr.l d1
  7486.     move.w d0,d1    
  7487.     clr.w d0
  7488.     swap d0
  7489.     lsl.l #3,d0
  7490.     lsl.l #3,d1
  7491.  
  7492.     or.l (a4,d0),d5
  7493.     or.w 4(a4,d0),d6
  7494.  
  7495.     or.l (a3,d1),d5
  7496.     or.w 4(a3,d1),d6
  7497.  
  7498.  
  7499.  
  7500.         clr.l (a1)+        ; clear 4 source chunky pixels
  7501.  
  7502.  
  7503.  
  7504.     move.l d3,d0        
  7505.     move.l d5,d1
  7506.  
  7507.     and.l d2,d0
  7508.     and.l d2,d1
  7509.  
  7510.     eor.l d0,d3
  7511.     eor.l d1,d5
  7512.  
  7513.     lsr.l #8,d1
  7514.     or.l d1,d0        ; d0 = A1a2c1c2
  7515.  
  7516.         move.l d0,(a2)+        
  7517.  
  7518.  
  7519.         lsl.l #8,d3
  7520.  
  7521.  
  7522.     move.w d4,d0        ;----e1f1
  7523.     swap d4            ;e1f1----
  7524.  
  7525.         or.l d5,d3
  7526.  
  7527.  
  7528.     move.w d6,d4        ;e1f1e2f2
  7529.  
  7530.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  7531.  
  7532.     rol.w #8,d4        ;e1f1f2e2
  7533.     move.b d4,d0        ;----e1e2
  7534.     lsl.l #8,d4        ;f1f2e2--
  7535.     move.w d0,d4        ;f1f2e1e2
  7536.     
  7537.  
  7538.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  7539.  
  7540.     dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_LP
  7541.     rts
  7542.  
  7543.  
  7544. Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_APEND:
  7545.  
  7546.  
  7547.  
  7548.  
  7549.  
  7550. ;    -    -    -    -    -    -    -    -    -
  7551.  
  7552. ;            >> DeltaNullSkip/CLEAR 64 colour Pllb-C2P <<
  7553.  
  7554. ;                Single pixel Width
  7555.  
  7556. ;               1.5Meg fastram version
  7557.  
  7558. ;    -    -    -    -    -    -    -    -    -
  7559.  
  7560.  
  7561. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1:
  7562.  
  7563.  
  7564.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  7565.  
  7566.     ; a6 tables are NOT USED
  7567.  
  7568.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  7569.  
  7570.  
  7571. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_AP:
  7572.  
  7573.  
  7574. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_LP:
  7575.  
  7576.     move.l (a0)+,d4
  7577.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont4
  7578.     move.l (a0)+,d5
  7579.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont3
  7580.     move.l (a0)+,d6
  7581.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont2
  7582.     move.l (a0)+,d0
  7583.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont1
  7584.  
  7585.  
  7586.     tst.b (a6)+
  7587.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1_5Meg_1by1_nodelta
  7588.  
  7589.         add.w #16,a1
  7590.         add.w #12,a2
  7591.  
  7592.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1_5Meg_1by1_LP
  7593.     rts
  7594.  
  7595.  
  7596. Pllb_C2p_DeltaNullSkip_6bit_1_5Meg_1by1_nodelta:
  7597.  
  7598.         clr.l (a2)+
  7599.         add.w #16,a1
  7600.         clr.l (a2)+
  7601.         clr.l (a2)+
  7602.  
  7603.         clr.b -1(a6)
  7604.         
  7605.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1_5Meg_1by1_LP
  7606.  
  7607.  
  7608.     rts
  7609.     nop
  7610.  
  7611. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont4:
  7612.  
  7613.     move.l (a0)+,d5
  7614.  
  7615. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont3:
  7616.  
  7617.     move.l (a0)+,d6
  7618.  
  7619. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont2:
  7620.  
  7621.     move.l (a0)+,d0
  7622.  
  7623. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_Cont1:
  7624.  
  7625.         clr.l (a1)+        ; clear 4 source chunky pixels
  7626.  
  7627.     ; d0 = bytes ABCD
  7628.  
  7629.     clr.l d1
  7630.     move.w d4,d1    
  7631.     clr.w d4
  7632.         st.b (a6)+
  7633.  
  7634.     swap d4
  7635.     lsl.l #3,d4
  7636.  
  7637.     move.l (a5,d4),d3
  7638.     move.w 4(a5,d4),d4
  7639.  
  7640.         lsl.l #2,d3
  7641.         lsl.w #2,d4
  7642.  
  7643.  
  7644.     lsl.l #3,d1
  7645.     or.l (a5,d1),d3
  7646.     or.w 4(a5,d1),d4
  7647.  
  7648.  
  7649.         clr.l (a1)+        ; clear 4 source chunky pixels
  7650.  
  7651.  
  7652.     clr.l d1
  7653.     move.w d5,d1    
  7654.     clr.w d5
  7655.     swap d5
  7656.     lsl.l #3,d5
  7657.  
  7658.     or.l (a4,d5),d3
  7659.     or.w 4(a4,d5),d4
  7660.  
  7661.     lsl.l #3,d1
  7662.     or.l (a3,d1),d3
  7663.     or.w 4(a3,d1),d4
  7664.  
  7665.         clr.l (a1)+        ; clear 4 source chunky pixels
  7666.  
  7667.     clr.l d1
  7668.     move.w d6,d1    
  7669.     clr.w d6
  7670.     swap d6
  7671.     lsl.l #3,d6
  7672.  
  7673.     move.l (a5,d6),d5
  7674.     move.w 4(a5,d6),d6
  7675.         lsl.l #2,d5
  7676.         lsl.w #2,d6
  7677.  
  7678.  
  7679.     lsl.l #3,d1
  7680.     or.l (a5,d1),d5
  7681.     or.w 4(a5,d1),d6
  7682.  
  7683.     clr.l d1
  7684.     move.w d0,d1    
  7685.     clr.w d0
  7686.     swap d0
  7687.     lsl.l #3,d0
  7688.     lsl.l #3,d1
  7689.  
  7690.     or.l (a4,d0),d5
  7691.     or.w 4(a4,d0),d6
  7692.  
  7693.     or.l (a3,d1),d5
  7694.     or.w 4(a3,d1),d6
  7695.  
  7696.  
  7697.         clr.l (a1)+        ; clear 4 source chunky pixels
  7698.  
  7699.  
  7700.     move.l d3,d0        
  7701.     move.l d5,d1
  7702.  
  7703.     and.l d2,d0
  7704.     and.l d2,d1
  7705.  
  7706.     eor.l d0,d3
  7707.     eor.l d1,d5
  7708.  
  7709.     lsr.l #8,d1
  7710.     or.l d1,d0        ; d0 = A1a2c1c2
  7711.  
  7712.         move.l d0,(a2)+        
  7713.  
  7714.         lsl.l #8,d3
  7715.  
  7716.     move.w d4,d0        ;----e1f1
  7717.     swap d4            ;e1f1----
  7718.  
  7719.         or.l d5,d3
  7720.  
  7721.  
  7722.     move.w d6,d4        ;e1f1e2f2
  7723.  
  7724.  
  7725.  
  7726.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  7727.  
  7728.  
  7729.  
  7730.     rol.w #8,d4        ;e1f1f2e2
  7731.     move.b d4,d0        ;----e1e2
  7732.     lsl.l #8,d4        ;f1f2e2--
  7733.     move.w d0,d4        ;f1f2e1e2
  7734.     
  7735.  
  7736.         move.l d4,(a2)+        ; d4 = f1f2e1e2
  7737.  
  7738.     dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_LP
  7739.     rts
  7740.  
  7741.  
  7742. Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_APEND:
  7743.  
  7744.  
  7745.  
  7746.  
  7747.  
  7748.  
  7749.  
  7750.  
  7751.  
  7752.  
  7753. ;---------------------------------------------------------------------------
  7754. ;---------------------------------------------------------------------------
  7755. ;---------------------------------------------------------------------------
  7756. ;--------------------------2by1 NORMAL VERSIONS-----------------------------
  7757. ;---------------------------------------------------------------------------
  7758. ;---------------------------------------------------------------------------
  7759. ;---------------------------------------------------------------------------
  7760.  
  7761.  
  7762.  
  7763. ;    -    -    -    -    -    -    -    -    -
  7764.  
  7765. ;               >> Normal 256 colour Pllb-C2P <<
  7766.  
  7767. ;                Double pixel Width
  7768.  
  7769. ;               512k fastram version
  7770.  
  7771. ;    -    -    -    -    -    -    -    -    -
  7772.  
  7773.  
  7774. Pllb_C2p_6bit_512k_2by1:
  7775.  
  7776.     bsr Pllb_c2p_init_Normal_c2p_registers
  7777.  
  7778.     ; a4,a5,a6 not used
  7779.  
  7780.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  7781.  
  7782.  
  7783. Pllb_C2p_6bit_512k_2by1_AP:
  7784.  
  7785.     clr.l d1
  7786.     move.l (a0)+,d0
  7787.     move.w d0,d1    
  7788.     clr.w d0
  7789.     nop
  7790.     nop
  7791.     nop
  7792.     bra.b Pllb_C2p_6bit_512k_2by1_Skip    
  7793.  
  7794. Pllb_C2p_6bit_512k_2by1_lp:
  7795.  
  7796.     clr.l d1
  7797.     move.l (a0)+,d0
  7798.     move.w d0,d1    
  7799.     clr.w d0
  7800.  
  7801.         move.l d4,(a1)+        ; write the last longword
  7802.  
  7803. Pllb_C2p_6bit_512k_2by1_SKIP:
  7804.  
  7805.  
  7806.     swap d0
  7807.     lsl.l #3,d0
  7808.  
  7809.     move.l (a3,d0),d3
  7810.     move.w 4(a3,d0),d4
  7811.  
  7812.         lsl.l #4,d3
  7813.         lsl.w #4,d4
  7814.  
  7815.     lsl.l #3,d1
  7816.  
  7817.     or.l (a3,d1),d3
  7818.     or.w 4(a3,d1),d4
  7819.  
  7820.  
  7821.  
  7822.     clr.l d1
  7823.     move.l (a0)+,d0
  7824.     move.w d0,d1    
  7825.     clr.w d0
  7826.     swap d0
  7827.     lsl.l #3,d0
  7828.  
  7829.     move.l (a3,d0),d5
  7830.     move.w 4(a3,d0),d6
  7831.  
  7832.         lsl.l #4,d5
  7833.         lsl.w #4,d6
  7834.  
  7835.     lsl.l #3,d1
  7836.     or.l (a3,d1),d5
  7837.     or.w 4(a3,d1),d6
  7838.  
  7839.     move.l d3,d0        
  7840.     move.l d5,d1
  7841.  
  7842.     and.l d2,d0
  7843.     and.l d2,d1
  7844.  
  7845.     eor.l d0,d3
  7846.     eor.l d1,d5
  7847.  
  7848.     lsr.l #8,d1
  7849.     or.l d1,d0        ; d0 = A1a2c1c2
  7850.  
  7851.         move.l d0,(a1)+        
  7852.  
  7853.         lsl.l #8,d3
  7854.  
  7855.  
  7856.     move.w d4,d0        ;----e1f1
  7857.     swap d4            ;e1f1----
  7858.  
  7859.         or.l d5,d3
  7860.  
  7861.  
  7862.     move.w d6,d4        ;e1f1e2f2
  7863.  
  7864.  
  7865.  
  7866.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  7867.  
  7868.  
  7869.     rol.w #8,d4        ;e1f1f2e2
  7870.     move.b d4,d0        ;----e1e2
  7871.     lsl.l #8,d4        ;f1f2e2--
  7872.     move.w d0,d4        ;f1f2e1e2
  7873.     
  7874.  
  7875.  
  7876.     dbf d7,Pllb_C2p_6bit_512k_2by1_lp
  7877.  
  7878.     move.l d4,(a1)+        ; write outstanding long word
  7879.     rts
  7880.  
  7881. Pllb_C2p_6bit_512k_2by1_APEND:
  7882.  
  7883.  
  7884.  
  7885.  
  7886.  
  7887.  
  7888. ;    -    -    -    -    -    -    -    -    -
  7889.  
  7890. ;               >> Normal 256 colour Pllb-C2P <<
  7891.  
  7892. ;                Double pixel Width
  7893.  
  7894. ;               1meg fastram version
  7895.  
  7896. ;    -    -    -    -    -    -    -    -    -
  7897.  
  7898.  
  7899. Pllb_C2p_6bit_1meg_2by1:
  7900.  
  7901.     bsr Pllb_c2p_init_Normal_c2p_registers
  7902.  
  7903.     ; a5,a6 not needed
  7904.  
  7905.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  7906.  
  7907.  
  7908. Pllb_C2p_6bit_1meg_2by1_AP:
  7909.  
  7910.     clr.l d1
  7911.     move.l (a0)+,d0
  7912.     move.w d0,d1    
  7913.     clr.w d0
  7914.     nop
  7915.     nop
  7916.     nop
  7917.     bra.b Pllb_C2p_6bit_1meg_2by1_Skip    
  7918.  
  7919. Pllb_C2p_6bit_1meg_2by1_lp:
  7920.  
  7921.     clr.l d1
  7922.     move.l (a0)+,d0
  7923.     move.w d0,d1    
  7924.     clr.w d0
  7925.  
  7926.         move.l d4,(a1)+        ; write the last longword
  7927.  
  7928. Pllb_C2p_6bit_1meg_2by1_SKIP:
  7929.  
  7930.     swap d0
  7931.     lsl.l #3,d0
  7932.  
  7933.     move.l (a4,d0),d3
  7934.     move.w 4(a4,d0),d4
  7935.  
  7936.     lsl.l #3,d1
  7937.  
  7938.     or.l (a3,d1),d3
  7939.     or.w 4(a3,d1),d4
  7940.  
  7941.  
  7942.     clr.l d1
  7943.     move.l (a0)+,d0
  7944.     move.w d0,d1    
  7945.     clr.w d0
  7946.     swap d0
  7947.     lsl.l #3,d0
  7948.  
  7949.     move.l (a4,d0),d5
  7950.     move.w 4(a4,d0),d6
  7951.  
  7952.     lsl.l #3,d1
  7953.     or.l (a3,d1),d5
  7954.     or.w 4(a3,d1),d6
  7955.  
  7956.  
  7957.     move.l d3,d0        
  7958.     move.l d5,d1
  7959.  
  7960.     and.l d2,d0
  7961.     and.l d2,d1
  7962.  
  7963.     eor.l d0,d3
  7964.     eor.l d1,d5
  7965.  
  7966.     lsr.l #8,d1
  7967.     or.l d1,d0        ; d0 = A1a2c1c2
  7968.  
  7969.         move.l d0,(a1)+        
  7970.  
  7971.         lsl.l #8,d3
  7972.  
  7973.  
  7974.     move.w d4,d0        ;----e1f1
  7975.     swap d4            ;e1f1----
  7976.  
  7977.         or.l d5,d3
  7978.  
  7979.  
  7980.     move.w d6,d4        ;e1f1e2f2
  7981.  
  7982.  
  7983.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  7984.  
  7985.  
  7986.     rol.w #8,d4        ;e1f1f2e2
  7987.     move.b d4,d0        ;----e1e2
  7988.     lsl.l #8,d4        ;f1f2e2--
  7989.     move.w d0,d4        ;f1f2e1e2
  7990.     
  7991.  
  7992.     dbf d7,Pllb_C2p_6bit_1meg_2by1_lp
  7993.  
  7994.         move.l d4,(a1)+        ; write outstanding long word
  7995.     rts
  7996.  
  7997. Pllb_C2p_6bit_1Meg_2by1_APEND:
  7998.  
  7999.  
  8000.  
  8001.  
  8002.  
  8003.  
  8004. ;---------------------------------------------------------------------------
  8005. ;---------------------------------------------------------------------------
  8006. ;---------------------------------------------------------------------------
  8007. ;---------------------------2by1 DELTA VERSIONS-----------------------------
  8008. ;---------------------------------------------------------------------------
  8009. ;---------------------------------------------------------------------------
  8010. ;---------------------------------------------------------------------------
  8011.  
  8012.  
  8013.  
  8014.  
  8015.  
  8016. ;    -    -    -    -    -    -    -    -    -
  8017.  
  8018. ;               >> DELTA 64 colour Pllb-C2P <<
  8019.  
  8020. ;                Double pixel Width
  8021.  
  8022. ;               512k fastram version
  8023.  
  8024. ;    -    -    -    -    -    -    -    -    -
  8025.  
  8026.  
  8027. Pllb_C2p_Delta_6bit_512k_2by1:
  8028.  
  8029.     bsr Pllb_c2p_init_DELTA_c2p_registers
  8030.  
  8031.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  8032.  
  8033.  
  8034. Pllb_C2p_Delta_6bit_512k_2by1_AP:
  8035.  
  8036.  
  8037. Pllb_C2p_Delta_6bit_512k_2by1_LP:
  8038.  
  8039.     move.l (a0)+,d4
  8040.     move.l (a0)+,d6
  8041.  
  8042.     cmp.l (a1)+,d4
  8043.     bne.b Pllb_C2p_Delta_6bit_512k_2by1_Cont2
  8044.  
  8045.     cmp.l (a1)+,d6
  8046.     bne.b Pllb_C2p_Delta_6bit_512k_2by1_Cont1
  8047.  
  8048.         add.w #12,a2
  8049.     
  8050.  
  8051.         dbf d7,Pllb_C2p_Delta_6bit_512k_2by1_LP
  8052.  
  8053.     rts
  8054.     nop
  8055.  
  8056.  
  8057. Pllb_C2p_Delta_6bit_512k_2by1_Cont2:
  8058.  
  8059.     addq.l #4,a1
  8060.  
  8061. Pllb_C2p_Delta_6bit_512k_2by1_Cont1:
  8062.  
  8063.  
  8064.     clr.l d1
  8065.     move.w d4,d1    
  8066.     clr.w d4
  8067.     swap d4
  8068.     lsl.l #3,d4
  8069.     lsl.l #3,d1
  8070.  
  8071.     move.l (a3,d4),d3
  8072.     move.w 4(a3,d4),d4
  8073.  
  8074.         lsl.l #4,d3
  8075.         lsl.w #4,d4
  8076.  
  8077.  
  8078.     or.l (a3,d1),d3
  8079.     or.w 4(a3,d1),d4
  8080.  
  8081.  
  8082.     clr.l d1
  8083.     move.w d6,d1    
  8084.     clr.w d6
  8085.     swap d6
  8086.     lsl.l #3,d6
  8087.     lsl.l #3,d1
  8088.  
  8089.     move.l (a3,d6),d5
  8090.     move.w 4(a3,d6),d6
  8091.  
  8092.         lsl.l #4,d5
  8093.         lsl.w #4,d6
  8094.  
  8095.     or.l (a3,d1),d5
  8096.     or.w 4(a3,d1),d6
  8097.  
  8098.  
  8099.     move.l d3,d0        
  8100.     move.l d5,d1
  8101.  
  8102.     and.l d2,d0
  8103.     and.l d2,d1
  8104.  
  8105.     eor.l d0,d3
  8106.     eor.l d1,d5
  8107.  
  8108.     lsr.l #8,d1
  8109.     or.l d1,d0        ; d0 = A1a2c1c2
  8110.  
  8111.         move.l d0,(a2)+        
  8112.  
  8113.         lsl.l #8,d3
  8114.  
  8115.  
  8116.     move.w d4,d0        ;----e1f1
  8117.     swap d4            ;e1f1----
  8118.  
  8119.         or.l d5,d3
  8120.  
  8121.  
  8122.     move.w d6,d4        ;e1f1e2f2
  8123.  
  8124.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  8125.  
  8126.  
  8127.     rol.w #8,d4        ;e1f1f2e2
  8128.     move.b d4,d0        ;----e1e2
  8129.     lsl.l #8,d4        ;f1f2e2--
  8130.     move.w d0,d4        ;f1f2e1e2
  8131.     
  8132.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  8133.  
  8134.     dbf d7,Pllb_C2p_Delta_6bit_512k_2by1_LP
  8135.  
  8136.     rts
  8137.  
  8138.  
  8139. Pllb_C2p_Delta_6bit_512k_2by1_APEND:
  8140.  
  8141.  
  8142.  
  8143.  
  8144. ;    -    -    -    -    -    -    -    -    -
  8145.  
  8146. ;               >> DELTA 64 colour Pllb-C2P <<
  8147.  
  8148. ;                Double pixel Width
  8149.  
  8150. ;               1Meg fastram version
  8151.  
  8152. ;    -    -    -    -    -    -    -    -    -
  8153.  
  8154.  
  8155. Pllb_C2p_Delta_6bit_1Meg_2by1:
  8156.  
  8157.     bsr Pllb_c2p_init_DELTA_c2p_registers
  8158.  
  8159.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  8160.  
  8161.  
  8162. Pllb_C2p_Delta_6bit_1Meg_2by1_AP:
  8163.  
  8164.  
  8165. Pllb_C2p_Delta_6bit_1Meg_2by1_LP:
  8166.  
  8167.     move.l (a0)+,d4
  8168.     move.l (a0)+,d6
  8169.  
  8170.     cmp.l (a1)+,d4
  8171.     bne.b Pllb_C2p_Delta_6bit_1Meg_2by1_Cont2
  8172.  
  8173.     cmp.l (a1)+,d6
  8174.     bne.b Pllb_C2p_Delta_6bit_1Meg_2by1_Cont1
  8175.  
  8176.         add.w #12,a2
  8177.     
  8178.  
  8179.         dbf d7,Pllb_C2p_Delta_6bit_1Meg_2by1_LP
  8180.  
  8181.     rts
  8182.     nop
  8183.  
  8184.  
  8185. Pllb_C2p_Delta_6bit_1Meg_2by1_Cont2:
  8186.  
  8187.     addq.l #4,a1
  8188.  
  8189. Pllb_C2p_Delta_6bit_1Meg_2by1_Cont1:
  8190.  
  8191.  
  8192.     clr.l d1
  8193.     move.w d4,d1    
  8194.     clr.w d4
  8195.     swap d4
  8196.     lsl.l #3,d4
  8197.     lsl.l #3,d1
  8198.  
  8199.     move.l (a4,d4),d3
  8200.     move.w 4(a4,d4),d4
  8201.  
  8202.     or.l (a3,d1),d3
  8203.     or.w 4(a3,d1),d4
  8204.  
  8205.  
  8206.     clr.l d1
  8207.     move.w d6,d1    
  8208.     clr.w d6
  8209.     swap d6
  8210.     lsl.l #3,d6
  8211.     lsl.l #3,d1
  8212.  
  8213.     move.l (a4,d6),d5
  8214.     move.w 4(a4,d6),d6
  8215.  
  8216.     or.l (a3,d1),d5
  8217.     or.w 4(a3,d1),d6
  8218.  
  8219.  
  8220.     move.l d3,d0        
  8221.     move.l d5,d1
  8222.  
  8223.     and.l d2,d0
  8224.     and.l d2,d1
  8225.  
  8226.     eor.l d0,d3
  8227.     eor.l d1,d5
  8228.  
  8229.     lsr.l #8,d1
  8230.     or.l d1,d0        ; d0 = A1a2c1c2
  8231.  
  8232.         move.l d0,(a2)+        
  8233.  
  8234.         lsl.l #8,d3
  8235.  
  8236.  
  8237.     move.w d4,d0        ;----e1f1
  8238.     swap d4            ;e1f1----
  8239.  
  8240.         or.l d5,d3
  8241.  
  8242.  
  8243.     move.w d6,d4        ;e1f1e2f2
  8244.  
  8245.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  8246.  
  8247.  
  8248.     rol.w #8,d4        ;e1f1f2e2
  8249.     move.b d4,d0        ;----e1e2
  8250.     lsl.l #8,d4        ;f1f2e2--
  8251.     move.w d0,d4        ;f1f2e1e2
  8252.     
  8253.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  8254.  
  8255.     dbf d7,Pllb_C2p_Delta_6bit_1Meg_2by1_LP
  8256.  
  8257.     rts
  8258.  
  8259.  
  8260. Pllb_C2p_Delta_6bit_1Meg_2by1_APEND:
  8261.  
  8262.  
  8263.  
  8264.  
  8265.  
  8266.  
  8267.  
  8268.  
  8269.  
  8270. ;---------------------------------------------------------------------------
  8271. ;---------------------------------------------------------------------------
  8272. ;---------------------------------------------------------------------------
  8273. ;---------------------------2by1 NULLSKIP VERSIONS-----------------------------
  8274. ;---------------------------------------------------------------------------
  8275. ;---------------------------------------------------------------------------
  8276. ;---------------------------------------------------------------------------
  8277.  
  8278.  
  8279. ;    -    -    -    -    -    -    -    -    -
  8280.  
  8281. ;           >> NULLSKIP/CLEAR 64 colour Pllb-C2P <<
  8282.  
  8283. ;                Double pixel Width
  8284.  
  8285. ;               512k fastram version
  8286.  
  8287. ;    -    -    -    -    -    -    -    -    -
  8288.  
  8289.  
  8290. Pllb_C2p_NUllSkip_6bit_512k_2by1:
  8291.  
  8292.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  8293.  
  8294.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  8295.  
  8296.  
  8297. Pllb_C2p_NUllSkip_6bit_512k_2by1_AP:
  8298.  
  8299.  
  8300. Pllb_C2p_NUllSkip_6bit_512k_2by1_Lp:
  8301.  
  8302.     move.l (a0)+,d4
  8303.     bne.b Pllb_C2p_NUllSkip_6bit_512k_2by1_CONT2
  8304.     move.l (a0)+,d6
  8305.     bne.b Pllb_C2p_NUllSkip_6bit_512k_2by1_CONT1
  8306.  
  8307.         clr.l (a2)+
  8308.         addq.l #8,a1
  8309.         clr.l (a2)+
  8310.         clr.l (a2)+
  8311.  
  8312.         dbf d7,Pllb_C2p_NUllSkip_6bit_512k_2by1_Lp
  8313.  
  8314.  
  8315.     rts
  8316.     nop
  8317.  
  8318.  
  8319. Pllb_C2p_NUllSkip_6bit_512k_2by1_CONT2:
  8320.  
  8321.     move.l (a0)+,d6
  8322.  
  8323.  
  8324. Pllb_C2p_NUllSkip_6bit_512k_2by1_CONT1:
  8325.  
  8326.     clr.l (a1)+    ; clear 4 pixels of source chunky
  8327.  
  8328.     clr.l d1
  8329.     move.w d4,d1    
  8330.  
  8331.     clr.w d4
  8332.  
  8333.     swap d4
  8334.     lsl.l #3,d4
  8335.  
  8336.     move.l (a3,d4),d3
  8337.     move.w 4(a3,d4),d4
  8338.  
  8339.         lsl.l #4,d3
  8340.         lsl.w #4,d4
  8341.  
  8342.     lsl.l #3,d1
  8343.  
  8344.     or.l (a3,d1),d3
  8345.     or.w 4(a3,d1),d4
  8346.  
  8347.  
  8348.  
  8349.     clr.l (a1)+    ; clear source chunky 4pixels
  8350.  
  8351.  
  8352.  
  8353.     clr.l d1
  8354.     move.w d6,d1    
  8355.     clr.w d6
  8356.     swap d6
  8357.     lsl.l #3,d6
  8358.  
  8359.     move.l (a3,d6),d5
  8360.     move.w 4(a3,d6),d6
  8361.  
  8362.         lsl.l #4,d5
  8363.         lsl.w #4,d6
  8364.  
  8365.     lsl.l #3,d1
  8366.     or.l (a3,d1),d5
  8367.     or.w 4(a3,d1),d6
  8368.  
  8369.     move.l d3,d0        
  8370.     move.l d5,d1
  8371.  
  8372.     and.l d2,d0
  8373.     and.l d2,d1
  8374.  
  8375.     eor.l d0,d3
  8376.     eor.l d1,d5
  8377.  
  8378.     lsr.l #8,d1
  8379.     or.l d1,d0        ; d0 = A1a2c1c2
  8380.  
  8381.         move.l d0,(a2)+        
  8382.  
  8383.         lsl.l #8,d3
  8384.  
  8385.  
  8386.     move.w d4,d0        ;----e1f1
  8387.     swap d4            ;e1f1----
  8388.  
  8389.         or.l d5,d3
  8390.  
  8391.  
  8392.     move.w d6,d4        ;e1f1e2f2
  8393.  
  8394.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  8395.  
  8396.  
  8397.     rol.w #8,d4        ;e1f1f2e2
  8398.     move.b d4,d0        ;----e1e2
  8399.     lsl.l #8,d4        ;f1f2e2--
  8400.     move.w d0,d4        ;f1f2e1e2
  8401.     
  8402.  
  8403.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  8404.  
  8405.  
  8406.     dbf d7,Pllb_C2p_NUllSkip_6bit_512k_2by1_Lp
  8407.  
  8408.     rts
  8409.  
  8410.  
  8411. Pllb_C2p_NUllSkip_6bit_512k_2by1_APEND:
  8412.  
  8413.  
  8414.  
  8415.  
  8416.  
  8417.  
  8418. ;    -    -    -    -    -    -    -    -    -
  8419.  
  8420. ;           >> NULLSKIP/CLEAR 64 colour Pllb-C2P <<
  8421.  
  8422. ;                Double pixel Width
  8423.  
  8424. ;               1Meg fastram version
  8425.  
  8426. ;    -    -    -    -    -    -    -    -    -
  8427.  
  8428.  
  8429. Pllb_C2p_NUllSkip_6bit_1Meg_2by1:
  8430.  
  8431.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  8432.  
  8433.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  8434.  
  8435.  
  8436. Pllb_C2p_NUllSkip_6bit_1Meg_2by1_AP:
  8437.  
  8438.  
  8439. Pllb_C2p_NUllSkip_6bit_1Meg_2by1_Lp:
  8440.  
  8441.     move.l (a0)+,d4
  8442.     bne.b Pllb_C2p_NUllSkip_6bit_1Meg_2by1_CONT2
  8443.     move.l (a0)+,d6
  8444.     bne.b Pllb_C2p_NUllSkip_6bit_1Meg_2by1_CONT1
  8445.  
  8446.         clr.l (a2)+
  8447.         addq.l #8,a1
  8448.         clr.l (a2)+
  8449.         clr.l (a2)+
  8450.     
  8451.         dbf d7,Pllb_C2p_NUllSkip_6bit_1Meg_2by1_Lp
  8452.  
  8453.     rts
  8454.     nop
  8455.  
  8456.  
  8457. Pllb_C2p_NUllSkip_6bit_1Meg_2by1_CONT2:
  8458.  
  8459.     move.l (a0)+,d6
  8460.  
  8461.  
  8462. Pllb_C2p_NUllSkip_6bit_1Meg_2by1_CONT1:
  8463.  
  8464.     clr.l (a1)+    ; clear 4 pixels of source chunky
  8465.  
  8466.     clr.l d1
  8467.     move.w d4,d1    
  8468.  
  8469.     clr.w d4
  8470.  
  8471.     swap d4
  8472.     lsl.l #3,d4
  8473.  
  8474.     move.l (a4,d4),d3
  8475.     move.w 4(a4,d4),d4
  8476.  
  8477.     lsl.l #3,d1
  8478.  
  8479.     or.l (a3,d1),d3
  8480.     or.w 4(a3,d1),d4
  8481.  
  8482.  
  8483.  
  8484.     clr.l (a1)+    ; clear source chunky 4pixels
  8485.  
  8486.  
  8487.  
  8488.     clr.l d1
  8489.     move.w d6,d1    
  8490.     clr.w d6
  8491.     swap d6
  8492.     lsl.l #3,d6
  8493.  
  8494.     move.l (a4,d6),d5
  8495.     move.w 4(a4,d6),d6
  8496.  
  8497.     lsl.l #3,d1
  8498.     or.l (a3,d1),d5
  8499.     or.w 4(a3,d1),d6
  8500.  
  8501.     move.l d3,d0        
  8502.     move.l d5,d1
  8503.  
  8504.     and.l d2,d0
  8505.     and.l d2,d1
  8506.  
  8507.     eor.l d0,d3
  8508.     eor.l d1,d5
  8509.  
  8510.     lsr.l #8,d1
  8511.     or.l d1,d0        ; d0 = A1a2c1c2
  8512.  
  8513.         move.l d0,(a2)+        
  8514.  
  8515.         lsl.l #8,d3
  8516.  
  8517.  
  8518.     move.w d4,d0        ;----e1f1
  8519.     swap d4            ;e1f1----
  8520.  
  8521.         or.l d5,d3
  8522.  
  8523.  
  8524.     move.w d6,d4        ;e1f1e2f2
  8525.  
  8526.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  8527.  
  8528.  
  8529.     rol.w #8,d4        ;e1f1f2e2
  8530.     move.b d4,d0        ;----e1e2
  8531.     lsl.l #8,d4        ;f1f2e2--
  8532.     move.w d0,d4        ;f1f2e1e2
  8533.     
  8534.  
  8535.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  8536.  
  8537.     dbf d7,Pllb_C2p_NUllSkip_6bit_1Meg_2by1_Lp
  8538.     rts
  8539.  
  8540.  
  8541. Pllb_C2p_NUllSkip_6bit_1Meg_2by1_APEND:
  8542.  
  8543.  
  8544.  
  8545.  
  8546.  
  8547.  
  8548.  
  8549. ;---------------------------------------------------------------------------
  8550. ;---------------------------------------------------------------------------
  8551. ;---------------------------------------------------------------------------
  8552. ;------------------------2by1 DELTA NULLSKIP VERSIONS-----------------------
  8553. ;---------------------------------------------------------------------------
  8554. ;---------------------------------------------------------------------------
  8555. ;---------------------------------------------------------------------------
  8556.  
  8557.  
  8558. ;    -    -    -    -    -    -    -    -    -
  8559.  
  8560. ;           >> DeltaNullSkip/CLEAR 64 colour Pllb-C2P <<
  8561.  
  8562. ;                Double pixel Width
  8563.  
  8564. ;               512k fastram version
  8565.  
  8566. ;    -    -    -    -    -    -    -    -    -
  8567.  
  8568.  
  8569. Pllb_C2p_DeltaNullSkip_6bit_512k_2by1:
  8570.  
  8571.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  8572.  
  8573.     move.l #12,a5
  8574.  
  8575.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  8576.  
  8577.  
  8578. Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_AP:
  8579.  
  8580.  
  8581. Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_Lp:
  8582.  
  8583.     move.l (a0)+,d4
  8584.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_CONT2
  8585.     move.l (a0)+,d6
  8586.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_CONT1
  8587.  
  8588.     tst.b (a6)+
  8589.     bne.w Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_nodelta
  8590.  
  8591.  
  8592.         addq.l #8,a1
  8593.         add.w a5,a2
  8594.         
  8595.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_LP
  8596.  
  8597.     rts
  8598.     nop
  8599.  
  8600. Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_nodelta:
  8601.  
  8602.  
  8603.         clr.l (a2)+
  8604.             addq.l #8,a1
  8605.         clr.l (a2)+
  8606.         clr.l (a2)+
  8607.  
  8608.         clr.b -1(a6)
  8609.  
  8610.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_Lp
  8611.  
  8612.  
  8613.     rts
  8614.     nop
  8615.  
  8616.  
  8617. Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_CONT2:
  8618.  
  8619.     move.l (a0)+,d6
  8620.  
  8621.  
  8622. Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_CONT1:
  8623.  
  8624.     clr.l (a1)+    ; clear 4 pixels of source chunky
  8625.  
  8626.     clr.l d1
  8627.     move.w d4,d1    
  8628.  
  8629.     clr.w d4
  8630.  
  8631.  
  8632.         st.b (a6)+
  8633.  
  8634.     swap d4
  8635.     lsl.l #3,d4
  8636.  
  8637.     move.l (a3,d4),d3
  8638.     move.w 4(a3,d4),d4
  8639.  
  8640.         lsl.l #4,d3
  8641.         lsl.w #4,d4
  8642.  
  8643.     lsl.l #3,d1
  8644.  
  8645.     or.l (a3,d1),d3
  8646.     or.w 4(a3,d1),d4
  8647.  
  8648.  
  8649.  
  8650.     clr.l (a1)+    ; clear source chunky 4pixels
  8651.  
  8652.  
  8653.  
  8654.     clr.l d1
  8655.     move.w d6,d1    
  8656.     clr.w d6
  8657.     swap d6
  8658.     lsl.l #3,d6
  8659.  
  8660.     move.l (a3,d6),d5
  8661.     move.w 4(a3,d6),d6
  8662.  
  8663.         lsl.l #4,d5
  8664.         lsl.w #4,d6
  8665.  
  8666.     lsl.l #3,d1
  8667.     or.l (a3,d1),d5
  8668.     or.w 4(a3,d1),d6
  8669.  
  8670.     move.l d3,d0        
  8671.     move.l d5,d1
  8672.  
  8673.     and.l d2,d0
  8674.     and.l d2,d1
  8675.  
  8676.     eor.l d0,d3
  8677.     eor.l d1,d5
  8678.  
  8679.     lsr.l #8,d1
  8680.     or.l d1,d0        ; d0 = A1a2c1c2
  8681.  
  8682.         move.l d0,(a2)+        
  8683.  
  8684.         lsl.l #8,d3
  8685.  
  8686.  
  8687.     move.w d4,d0        ;----e1f1
  8688.     swap d4            ;e1f1----
  8689.  
  8690.         or.l d5,d3
  8691.  
  8692.  
  8693.     move.w d6,d4        ;e1f1e2f2
  8694.  
  8695.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  8696.  
  8697.  
  8698.     rol.w #8,d4        ;e1f1f2e2
  8699.     move.b d4,d0        ;----e1e2
  8700.     lsl.l #8,d4        ;f1f2e2--
  8701.     move.w d0,d4        ;f1f2e1e2
  8702.     
  8703.  
  8704.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  8705.  
  8706.  
  8707.     dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_Lp
  8708.  
  8709.     rts
  8710.  
  8711.  
  8712. Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_APEND:
  8713.  
  8714.  
  8715.  
  8716.  
  8717.  
  8718.  
  8719. ;    -    -    -    -    -    -    -    -    -
  8720.  
  8721. ;           >> DeltaNullSkip/CLEAR 64 colour Pllb-C2P <<
  8722.  
  8723. ;                Double pixel Width
  8724.  
  8725. ;               1Meg fastram version
  8726.  
  8727. ;    -    -    -    -    -    -    -    -    -
  8728.  
  8729.  
  8730. Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1:
  8731.  
  8732.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  8733.  
  8734.     move.l #12,a5
  8735.  
  8736.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  8737.  
  8738.  
  8739. Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_AP:
  8740.  
  8741.  
  8742. Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_Lp:
  8743.  
  8744.     move.l (a0)+,d4
  8745.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_CONT2
  8746.     move.l (a0)+,d6
  8747.     bne.b Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_CONT1
  8748.  
  8749.  
  8750.  
  8751.  
  8752.     tst.b (a6)+
  8753.     bne.w Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_nodelta
  8754.  
  8755.  
  8756.         addq.l #8,a1
  8757.         add.w a5,a2
  8758.         
  8759.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_LP
  8760.  
  8761.     rts
  8762.     nop
  8763.  
  8764. Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_nodelta:
  8765.  
  8766.  
  8767.         clr.l (a2)+
  8768.             addq.l #8,a1
  8769.         clr.l (a2)+
  8770.         clr.l (a2)+
  8771.  
  8772.         clr.b -1(a6)
  8773.  
  8774.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_Lp
  8775.  
  8776.     rts
  8777.     nop
  8778.  
  8779.  
  8780. Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_CONT2:
  8781.  
  8782.     move.l (a0)+,d6
  8783.  
  8784.  
  8785. Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_CONT1:
  8786.  
  8787.     clr.l (a1)+    ; clear 4 pixels of source chunky
  8788.  
  8789.     clr.l d1
  8790.     move.w d4,d1    
  8791.  
  8792.     clr.w d4
  8793.  
  8794.         st.b (a6)+
  8795.  
  8796.     swap d4
  8797.     lsl.l #3,d4
  8798.  
  8799.     move.l (a4,d4),d3
  8800.     move.w 4(a4,d4),d4
  8801.  
  8802.     lsl.l #3,d1
  8803.  
  8804.     or.l (a3,d1),d3
  8805.     or.w 4(a3,d1),d4
  8806.  
  8807.  
  8808.  
  8809.     clr.l (a1)+    ; clear source chunky 4pixels
  8810.  
  8811.  
  8812.  
  8813.     clr.l d1
  8814.     move.w d6,d1    
  8815.     clr.w d6
  8816.     swap d6
  8817.     lsl.l #3,d6
  8818.  
  8819.     move.l (a4,d6),d5
  8820.     move.w 4(a4,d6),d6
  8821.  
  8822.     lsl.l #3,d1
  8823.     or.l (a3,d1),d5
  8824.     or.w 4(a3,d1),d6
  8825.  
  8826.     move.l d3,d0        
  8827.     move.l d5,d1
  8828.  
  8829.     and.l d2,d0
  8830.     and.l d2,d1
  8831.  
  8832.     eor.l d0,d3
  8833.     eor.l d1,d5
  8834.  
  8835.     lsr.l #8,d1
  8836.     or.l d1,d0        ; d0 = A1a2c1c2
  8837.  
  8838.         move.l d0,(a2)+        
  8839.  
  8840.         lsl.l #8,d3
  8841.  
  8842.  
  8843.     move.w d4,d0        ;----e1f1
  8844.     swap d4            ;e1f1----
  8845.  
  8846.         or.l d5,d3
  8847.  
  8848.  
  8849.     move.w d6,d4        ;e1f1e2f2
  8850.  
  8851.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  8852.  
  8853.  
  8854.     rol.w #8,d4        ;e1f1f2e2
  8855.     move.b d4,d0        ;----e1e2
  8856.     lsl.l #8,d4        ;f1f2e2--
  8857.     move.w d0,d4        ;f1f2e1e2
  8858.     
  8859.  
  8860.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  8861.  
  8862.     dbf d7,Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_Lp
  8863.     rts
  8864.  
  8865.  
  8866. Pllb_C2p_DeltaNullSkip_6bit_1Meg_2by1_APEND:
  8867.  
  8868.  
  8869.  
  8870.  
  8871.  
  8872.  
  8873.  
  8874.  
  8875. ;---------------------------------------------------------------------------
  8876. ;---------------------------------------------------------------------------
  8877. ;---------------------------------------------------------------------------
  8878. ;--------------------------4by1 NORMAL VERSIONS-----------------------------
  8879. ;---------------------------------------------------------------------------
  8880. ;---------------------------------------------------------------------------
  8881. ;---------------------------------------------------------------------------
  8882.  
  8883.  
  8884. ;    -    -    -    -    -    -    -    -    -
  8885.  
  8886. ;               >> Normal 64 colour Pllb-C2P <<
  8887.  
  8888. ;                QUAD pixel Width
  8889.  
  8890. ;               512k fastram version
  8891.  
  8892. ;    -    -    -    -    -    -    -    -    -
  8893.  
  8894.  
  8895. Pllb_C2p_6bit_512k_4by1:
  8896.  
  8897.     bsr Pllb_c2p_init_Normal_c2p_registers
  8898.  
  8899.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  8900.  
  8901.  
  8902. Pllb_C2p_6bit_512k_4by1_AP:
  8903.  
  8904.  
  8905.     clr.l d1
  8906.     move.l (a0)+,d0
  8907.     move.w d0,d1    
  8908.     clr.w d0
  8909.     nop
  8910.     nop
  8911.     nop
  8912.     bra.b Pllb_C2p_6bit_512k_4by1_SKIP
  8913.  
  8914.  
  8915. Pllb_C2p_6bit_512k_4by1_lp:
  8916.  
  8917.     clr.l d1
  8918.     move.l (a0)+,d0
  8919.     move.w d0,d1    
  8920.  
  8921.     clr.w d0
  8922.  
  8923.         move.l d4,(a1)+        ; write the last longword
  8924.  
  8925.  
  8926. Pllb_C2p_6bit_512k_4by1_SKIP:
  8927.  
  8928.  
  8929.     swap d0
  8930.     lsl.l #3,d0
  8931.  
  8932.     move.l (a3,d0),d3
  8933.     move.w 4(a3,d0),d4
  8934.  
  8935.     lsl.l #3,d1
  8936.  
  8937.     move.l (a3,d1),d5
  8938.     move.w 4(a3,d1),d6
  8939.  
  8940.     move.l d3,d0        
  8941.     move.l d5,d1
  8942.  
  8943.     and.l d2,d0
  8944.     and.l d2,d1
  8945.  
  8946.     eor.l d0,d3
  8947.     eor.l d1,d5
  8948.  
  8949.     lsr.l #8,d1
  8950.     or.l d1,d0        ; d0 = A1a2c1c2
  8951.  
  8952.         move.l d0,(a1)+        
  8953.     
  8954.         lsl.l #8,d3
  8955.  
  8956.  
  8957.     move.w d4,d0        ;----e1f1
  8958.     swap d4            ;e1f1----
  8959.  
  8960.         or.l d5,d3
  8961.  
  8962.  
  8963.     move.w d6,d4        ;e1f1e2f2
  8964.  
  8965.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  8966.  
  8967.  
  8968.     rol.w #8,d4        ;e1f1f2e2
  8969.     move.b d4,d0        ;----e1e2
  8970.     lsl.l #8,d4        ;f1f2e2--
  8971.     move.w d0,d4        ;f1f2e1e2
  8972.     
  8973.     dbf d7,Pllb_C2p_6bit_512k_4by1_lp
  8974.  
  8975.     move.l d4,(a1)+        ; write outstanding long word
  8976.     rts
  8977.  
  8978.  
  8979. Pllb_C2p_6bit_512k_4by1_APEND:
  8980.  
  8981.  
  8982.  
  8983.  
  8984. ;---------------------------------------------------------------------------
  8985. ;---------------------------------------------------------------------------
  8986. ;---------------------------------------------------------------------------
  8987. ;--------------------------4by1 DELTA VERSIONS-----------------------------
  8988. ;---------------------------------------------------------------------------
  8989. ;---------------------------------------------------------------------------
  8990. ;---------------------------------------------------------------------------
  8991.  
  8992.  
  8993. ;    -    -    -    -    -    -    -    -    -
  8994.  
  8995. ;               >> DELTA 64 colour Pllb-C2P <<
  8996.  
  8997. ;                QUAD pixel Width
  8998.  
  8999. ;               512k fastram version
  9000.  
  9001. ;    -    -    -    -    -    -    -    -    -
  9002.  
  9003.  
  9004. Pllb_C2p_DELTA_6bit_512k_4by1:
  9005.  
  9006.     bsr Pllb_c2p_init_DELTA_c2p_registers
  9007.  
  9008.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9009.  
  9010. Pllb_C2p_DELTA_6bit_512k_4by1_AP:
  9011.  
  9012.  
  9013. Pllb_C2p_DELTA_6bit_512k_4by1_LP:
  9014.  
  9015.     move.l (a0)+,d4
  9016.     cmp.l (a1)+,d4
  9017.     bne.b Pllb_C2p_DELTA_6bit_512k_4by1_Cont
  9018.  
  9019.         add.w #12,a2
  9020.         dbf d7,Pllb_C2p_DELTA_6bit_512k_4by1_LP
  9021.     rts
  9022.  
  9023. Pllb_C2p_DELTA_6bit_512k_4by1_CONT:
  9024.  
  9025.     clr.l d1
  9026.     move.w d4,d1    
  9027.     clr.w d4
  9028.     swap d4
  9029.     lsl.l #3,d4
  9030.     lsl.l #3,d1
  9031.     move.l (a3,d4),d3
  9032.     move.w 4(a3,d4),d4
  9033.  
  9034.     move.l (a3,d1),d5
  9035.     move.w 4(a3,d1),d6
  9036.  
  9037.     move.l d3,d0        
  9038.     move.l d5,d1
  9039.  
  9040.     and.l d2,d0
  9041.     and.l d2,d1
  9042.  
  9043.     eor.l d0,d3
  9044.     eor.l d1,d5
  9045.  
  9046.     lsr.l #8,d1
  9047.     or.l d1,d0        ; d0 = A1a2c1c2
  9048.  
  9049.         move.l d0,(a2)+        
  9050.     
  9051.         lsl.l #8,d3
  9052.  
  9053.  
  9054.     move.w d4,d0        ;----e1f1
  9055.     swap d4            ;e1f1----
  9056.  
  9057.         or.l d5,d3
  9058.  
  9059.  
  9060.     move.w d6,d4        ;e1f1e2f2
  9061.  
  9062.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  9063.  
  9064.  
  9065.     rol.w #8,d4        ;e1f1f2e2
  9066.     move.b d4,d0        ;----e1e2
  9067.     lsl.l #8,d4        ;f1f2e2--
  9068.     move.w d0,d4        ;f1f2e1e2
  9069.     
  9070.  
  9071.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  9072.  
  9073.  
  9074.     dbf d7,Pllb_C2p_DELTA_6bit_512k_4by1_LP
  9075.  
  9076.     rts
  9077.  
  9078.  
  9079.  
  9080. Pllb_C2p_DELTA_6bit_512k_4by1_APEND:
  9081.  
  9082.  
  9083.  
  9084.  
  9085. ;---------------------------------------------------------------------------
  9086. ;---------------------------------------------------------------------------
  9087. ;---------------------------------------------------------------------------
  9088. ;--------------------------4by1 NULLSKIP VERSIONS-----------------------------
  9089. ;---------------------------------------------------------------------------
  9090. ;---------------------------------------------------------------------------
  9091. ;---------------------------------------------------------------------------
  9092.  
  9093. ;    -    -    -    -    -    -    -    -    -
  9094.  
  9095. ;               >> NULLSKIP/CLEAR 64 colour Pllb-C2P <<
  9096.  
  9097. ;                QUAD pixel Width
  9098.  
  9099. ;               512k fastram version
  9100.  
  9101. ;    -    -    -    -    -    -    -    -    -
  9102.  
  9103.  
  9104. Pllb_C2p_NULLSKIP_6bit_512k_4by1:
  9105.  
  9106.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  9107.  
  9108.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9109.  
  9110.  
  9111. Pllb_C2p_NULLSKIP_6bit_512k_4by1_AP:
  9112.  
  9113. Pllb_C2p_NULLSKIP_6bit_512k_4by1_LP:
  9114.  
  9115.     move.l (a0)+,d4
  9116.     bne.b Pllb_C2p_NULLSKIP_6bit_512k_4by1_Cont
  9117.  
  9118.         clr.l (a2)+
  9119.         addq.l #4,a1
  9120.         clr.l (a2)+
  9121.         clr.l (a2)+
  9122.  
  9123.  
  9124.         dbf d7,Pllb_C2p_NULLSKIP_6bit_512k_4by1_LP
  9125.  
  9126.     rts
  9127.     nop
  9128.  
  9129. Pllb_C2p_NULLSKIP_6bit_512k_4by1_Cont:
  9130.  
  9131.     clr.l d1
  9132.     move.w d4,d1    
  9133.     clr.w d4
  9134.     swap d4
  9135.     lsl.l #3,d4
  9136.     lsl.l #3,d1
  9137.  
  9138.     move.l (a3,d4),d3
  9139.     move.w 4(a3,d4),d4
  9140.  
  9141.     move.l (a3,d1),d5
  9142.     move.w 4(a3,d1),d6
  9143.  
  9144.     clr.l (a1)+
  9145.  
  9146.     move.l d3,d0        
  9147.     move.l d5,d1
  9148.  
  9149.     and.l d2,d0
  9150.     and.l d2,d1
  9151.  
  9152.     eor.l d0,d3
  9153.     eor.l d1,d5
  9154.  
  9155.     lsr.l #8,d1
  9156.     or.l d1,d0        ; d0 = A1a2c1c2
  9157.  
  9158.         move.l d0,(a2)+        
  9159.     
  9160.         lsl.l #8,d3
  9161.  
  9162.     move.w d4,d0        ;----e1f1
  9163.     swap d4            ;e1f1----
  9164.  
  9165.         or.l d5,d3
  9166.  
  9167.  
  9168.     move.w d6,d4        ;e1f1e2f2
  9169.  
  9170.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  9171.  
  9172.  
  9173.     rol.w #8,d4        ;e1f1f2e2
  9174.     move.b d4,d0        ;----e1e2
  9175.     lsl.l #8,d4        ;f1f2e2--
  9176.     move.w d0,d4        ;f1f2e1e2
  9177.     
  9178.  
  9179.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  9180.  
  9181.  
  9182.         dbf d7,Pllb_C2p_NULLSKIP_6bit_512k_4by1_lp
  9183.     rts
  9184.  
  9185. Pllb_C2p_NULLSKIP_6bit_512k_4by1_APEND:
  9186.  
  9187.  
  9188.  
  9189.  
  9190.  
  9191.  
  9192.  
  9193.  
  9194.  
  9195.  
  9196.  
  9197.  
  9198. ;---------------------------------------------------------------------------
  9199. ;---------------------------------------------------------------------------
  9200. ;---------------------------------------------------------------------------
  9201. ;-----------------------4by1 DELTA NULLSKIP VERSIONS------------------------
  9202. ;---------------------------------------------------------------------------
  9203. ;---------------------------------------------------------------------------
  9204. ;---------------------------------------------------------------------------
  9205.  
  9206. ;    -    -    -    -    -    -    -    -    -
  9207.  
  9208. ;               >> DeltaNullSkip/CLEAR 64 colour Pllb-C2P <<
  9209.  
  9210. ;                QUAD pixel Width
  9211.  
  9212. ;               512k fastram version
  9213.  
  9214. ;    -    -    -    -    -    -    -    -    -
  9215.  
  9216.  
  9217. Pllb_C2p_DeltaNullSkip_6bit_512k_4by1:
  9218.  
  9219.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  9220.  
  9221.     move.l #12,a5
  9222.  
  9223.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9224.  
  9225.  
  9226. Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_AP:
  9227.  
  9228. Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_LP:
  9229.  
  9230.     move.l (a0)+,d4
  9231.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_Cont
  9232.  
  9233.  
  9234.     tst.b (a6)+
  9235.     bne.b Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_nodelta
  9236.  
  9237.  
  9238.         addq.l #4,a1
  9239.         add.w a5,a2
  9240.         
  9241.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_LP
  9242.  
  9243.     rts
  9244.     nop
  9245.     nop
  9246.  
  9247. Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_nodelta:
  9248.  
  9249.  
  9250.         clr.l (a2)+
  9251.             addq.l #4,a1
  9252.         clr.l (a2)+
  9253.         clr.l (a2)+
  9254.  
  9255.         clr.b -1(a6)
  9256.  
  9257.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_Lp
  9258.  
  9259.     rts
  9260.     nop
  9261.  
  9262. Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_Cont:
  9263.  
  9264.     clr.l d1
  9265.     st.b (a6)+
  9266.     move.w d4,d1    
  9267.     clr.w d4
  9268.     swap d4
  9269.     lsl.l #3,d4
  9270.     lsl.l #3,d1
  9271.  
  9272.     move.l (a3,d4),d3
  9273.     move.w 4(a3,d4),d4
  9274.  
  9275.     move.l (a3,d1),d5
  9276.     move.w 4(a3,d1),d6
  9277.  
  9278.     clr.l (a1)+
  9279.  
  9280.     move.l d3,d0        
  9281.     move.l d5,d1
  9282.  
  9283.     and.l d2,d0
  9284.     and.l d2,d1
  9285.  
  9286.     eor.l d0,d3
  9287.     eor.l d1,d5
  9288.  
  9289.     lsr.l #8,d1
  9290.     or.l d1,d0        ; d0 = A1a2c1c2
  9291.  
  9292.         move.l d0,(a2)+        
  9293.     
  9294.         lsl.l #8,d3
  9295.  
  9296.     move.w d4,d0        ;----e1f1
  9297.     swap d4            ;e1f1----
  9298.  
  9299.         or.l d5,d3
  9300.  
  9301.  
  9302.     move.w d6,d4        ;e1f1e2f2
  9303.  
  9304.         move.l d3,(a2)+        ; d3 = b1b2d1d2
  9305.  
  9306.  
  9307.     rol.w #8,d4        ;e1f1f2e2
  9308.     move.b d4,d0        ;----e1e2
  9309.     lsl.l #8,d4        ;f1f2e2--
  9310.     move.w d0,d4        ;f1f2e1e2
  9311.     
  9312.  
  9313.         move.l d4,(a2)+        ; d4 = f1f2e1e2     planes 6,5
  9314.  
  9315.  
  9316.         dbf d7,Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_lp
  9317.     rts
  9318.  
  9319. Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_APEND:
  9320.  
  9321.  
  9322.  
  9323.  
  9324.  
  9325.  
  9326.  
  9327.  
  9328. ;    -    -    -    -    -    -    -    -    -
  9329.  
  9330. ;               >> NORMAL 16colour Pllb-C2P <<
  9331.  
  9332. ;                Single pixel Width
  9333.  
  9334. ;                512k fastram version
  9335.  
  9336. ;    -    -    -    -    -    -    -    -    -
  9337.  
  9338. Pllb_C2p_4bit_512K_1by1:
  9339.  
  9340.     bsr Pllb_c2p_init_Normal_c2p_registers
  9341.  
  9342.     ; a4,a5,a6 not used
  9343.  
  9344.     ; init a4 to point to a3+256k
  9345.  
  9346.     move.l a3,a4
  9347.     add.l #4*$10000,a4
  9348.     
  9349.     blk.w 32,$4e71        ; insert NOP's for routine alignment system
  9350.  
  9351. Pllb_C2p_4bit_512K_1by1_AP:
  9352.  
  9353.  
  9354.     move.l (a0)+,d0
  9355.     clr.l d1
  9356.     lsl.l #4,d0
  9357.     or.l (a0)+,d0
  9358.  
  9359.     bra.b Pllb_C2p_4bit_512K_1by1_skip
  9360.     nop
  9361.     nop
  9362.     nop
  9363.  
  9364. Pllb_C2p_4bit_512K_1by1_lp:
  9365.     
  9366.     move.l (a0)+,d0
  9367.     clr.l d1
  9368.     lsl.l #4,d0
  9369.     or.l (a0)+,d0
  9370.  
  9371.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  9372.  
  9373. Pllb_C2p_4bit_512K_1by1_Skip:
  9374.  
  9375.     move.w d0,d1    
  9376.     clr.w d0
  9377.     swap d0
  9378.     lsl.l #2,d0
  9379.  
  9380.     move.l (a4,d0),d3
  9381.     lsl.l #2,d1
  9382.     or.l (a3,d1),d3
  9383.  
  9384.  
  9385.     move.l (a0)+,d0
  9386.     clr.l d1
  9387.     lsl.l #4,d0
  9388.     or.l (a0)+,d0
  9389.  
  9390.     move.w d0,d1    
  9391.     clr.w d0
  9392.     swap d0
  9393.     lsl.l #2,d0
  9394.  
  9395.     move.l (a4,d0),d5
  9396.     lsl.l #2,d1
  9397.     or.l (a3,d1),d5
  9398.  
  9399.     move.l d3,d0        
  9400.     move.l d5,d1
  9401.  
  9402.     and.l d2,d0
  9403.     and.l d2,d1
  9404.  
  9405.     eor.l d0,d3
  9406.     eor.l d1,d5
  9407.  
  9408.     lsr.l #8,d1
  9409.     or.l d1,d0        ; d0 = A1a2c1c2
  9410.  
  9411.     move.l d0,(a1)+        
  9412.  
  9413.     lsl.l #8,d3
  9414.     or.l d5,d3
  9415.  
  9416.  
  9417.     dbf d7,Pllb_C2p_4bit_512K_1by1_lp
  9418.  
  9419.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  9420.  
  9421.     rts
  9422.  
  9423.  
  9424. Pllb_C2p_4bit_512K_1by1_APEND:
  9425.  
  9426.  
  9427.  
  9428.  
  9429.  
  9430.  
  9431. ; ----------------------------------------------------------------------------
  9432. ; ----------------------------------------------------------------------------
  9433. ; ----------------------------------------------------------------------------
  9434. ; ------------------------------DELTA 4bit Version----------------------------
  9435. ; ----------------------------------------------------------------------------
  9436. ; ----------------------------------------------------------------------------
  9437. ; ----------------------------------------------------------------------------
  9438.  
  9439. ;    -    -    -    -    -    -    -    -    -
  9440.  
  9441. ;              >> DELTA 16 colour Pllb-C2P <<
  9442.  
  9443. ;                Single pixel Width
  9444.  
  9445. ;               512k fastram version
  9446.  
  9447. ;    -    -    -    -    -    -    -    -    -
  9448.  
  9449.  
  9450. Pllb_C2p_Delta_4bit_512k_1by1:
  9451.  
  9452.     bsr Pllb_c2p_init_DELTA_c2p_registers
  9453.  
  9454.     ; a4/a5/a6    tables are NOT needed
  9455.  
  9456.     move.l a3,a4
  9457.     add.l #4*$10000,a4
  9458.  
  9459.  
  9460.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9461.  
  9462.  
  9463. Pllb_C2p_Delta_4bit_512k_1by1_AP:
  9464.  
  9465. Pllb_C2p_Delta_4bit_512k_1by1_LP:
  9466.  
  9467.  
  9468.  
  9469.     move.l (a0)+,d5
  9470.     move.l (a0)+,d4
  9471.     move.l (a0)+,d0
  9472.     move.l (a0)+,d6
  9473.  
  9474.     cmp.l (a1)+,d5
  9475.     bne.b Pllb_C2p_Delta_4bit_512k_1by1_Cont4
  9476.  
  9477.     cmp.l (a1)+,d4
  9478.     bne.b Pllb_C2p_Delta_4bit_512k_1by1_Cont3
  9479.  
  9480.     cmp.l (a1)+,d0
  9481.     bne.b Pllb_C2p_Delta_4bit_512k_1by1_Cont2
  9482.  
  9483.     cmp.l (a1)+,d6
  9484.     bne.b Pllb_C2p_Delta_4bit_512k_1by1_Cont1
  9485.  
  9486.         addq.l #8,a2
  9487.  
  9488.         dbf d7,Pllb_C2p_Delta_4bit_512k_1by1_LP
  9489.  
  9490.     rts
  9491.     nop
  9492.  
  9493.  
  9494. Pllb_C2p_Delta_4bit_512k_1by1_Cont4:
  9495.  
  9496.     addq.l #4,a1
  9497.  
  9498. Pllb_C2p_Delta_4bit_512k_1by1_Cont3:
  9499.  
  9500.     addq.l #4,a1
  9501.  
  9502. Pllb_C2p_Delta_4bit_512k_1by1_Cont2:
  9503.  
  9504.     addq.l #4,a1
  9505.  
  9506. Pllb_C2p_Delta_4bit_512k_1by1_Cont1:
  9507.  
  9508.     lsl.l #4,d5
  9509.     clr.l d1
  9510.     or.l d4,d5
  9511.  
  9512.     move.w d5,d1    
  9513.     clr.w d5
  9514.     swap d5
  9515.     lsl.l #2,d5
  9516.     lsl.l #2,d1
  9517.  
  9518.     move.l (a4,d5),d3
  9519.     or.l (a3,d1),d3
  9520.  
  9521.  
  9522.     lsl.l #4,d0
  9523.     clr.l d1
  9524.  
  9525.     or.l d6,d0
  9526.     move.w d0,d1    
  9527.  
  9528.     clr.w d0
  9529.     swap d0
  9530.  
  9531.     lsl.l #2,d0
  9532.     lsl.l #2,d1
  9533.     move.l (a4,d0),d5
  9534.     or.l (a3,d1),d5
  9535.  
  9536.     move.l d3,d0        
  9537.     move.l d5,d1
  9538.  
  9539.     and.l d2,d0
  9540.     and.l d2,d1
  9541.  
  9542.     eor.l d0,d3
  9543.     eor.l d1,d5
  9544.  
  9545.     lsr.l #8,d1
  9546.  
  9547.     or.l d1,d0        ; d0 = A1a2c1c2
  9548.  
  9549.     move.l d0,(a2)+        
  9550.  
  9551.     lsl.l #8,d3
  9552.     or.l d5,d3
  9553.  
  9554.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  9555.  
  9556.  
  9557.     dbf d7,Pllb_C2p_Delta_4bit_512k_1by1_lp
  9558.  
  9559.     rts
  9560.  
  9561.  
  9562. Pllb_C2p_Delta_4bit_512k_1by1_APEND:
  9563.  
  9564.  
  9565. ; ----------------------------------------------------------------------------
  9566. ; ----------------------------------------------------------------------------
  9567. ; ----------------------------------------------------------------------------
  9568. ; ---------------------------NULLSKIP 4bit Version----------------------------
  9569. ; ----------------------------------------------------------------------------
  9570. ; ----------------------------------------------------------------------------
  9571. ; ----------------------------------------------------------------------------
  9572.  
  9573. ;    -    -    -    -    -    -    -    -    -
  9574.  
  9575. ;          >> NULLSKIP/CLEAR 16 colour Pllb-C2P <<
  9576.  
  9577. ;                Single pixel Width
  9578.  
  9579. ;               512k fastram version
  9580.  
  9581. ;    -    -    -    -    -    -    -    -    -
  9582.  
  9583.  
  9584. Pllb_C2p_NULLSKIP_4bit_512k_1by1:
  9585.  
  9586.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  9587.  
  9588.     ; a4/a5/a6    tables are NOT needed
  9589.  
  9590.     move.l a3,a4
  9591.     add.l #4*$10000,a4
  9592.  
  9593.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9594.  
  9595. Pllb_C2p_NULLSKIP_4bit_512k_1by1_AP:
  9596.  
  9597. Pllb_C2p_NULLSKIP_4bit_512k_1by1_LP:
  9598.  
  9599.     move.l (a0)+,d5
  9600.     bne.b Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT4
  9601.     move.l (a0)+,d4
  9602.     bne.b Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT3
  9603.     move.l (a0)+,d0
  9604.     bne.b Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT2
  9605.     move.l (a0)+,d6
  9606.     bne.b Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT1
  9607.  
  9608.         clr.l (a2)+
  9609.  
  9610.         add.w #16,a1
  9611.  
  9612.         clr.l (a2)+
  9613.  
  9614.         dbf d7,Pllb_C2p_NULLSKIP_4bit_512k_1by1_LP
  9615.     
  9616.  
  9617.         rts
  9618.         nop
  9619.  
  9620.  
  9621. Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT4:
  9622.  
  9623.     move.l (a0)+,d4
  9624.  
  9625. Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT3:
  9626.  
  9627.     move.l (a0)+,d0
  9628.  
  9629. Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT2:
  9630.  
  9631.     move.l (a0)+,d6
  9632.  
  9633. Pllb_C2p_NULLSKIP_4bit_512k_1by1_CONT1:
  9634.  
  9635.         clr.l (a1)+        ; clear source chunky 4 pixels
  9636.  
  9637.  
  9638.     lsl.l #4,d5
  9639.     clr.l d1
  9640.     or.l d4,d5
  9641.     move.w d5,d1    
  9642.  
  9643.         clr.l (a1)+        ; clear source chunky 4 pixels
  9644.  
  9645.     clr.w d5
  9646.     swap d5
  9647.     lsl.l #2,d5
  9648.     lsl.l #2,d1
  9649.  
  9650.     move.l (a4,d5),d3
  9651.     or.l (a3,d1),d3
  9652.  
  9653.  
  9654.         clr.l (a1)+        ; clear source chunky 4 pixels
  9655.  
  9656.     lsl.l #4,d0
  9657.     clr.l d1
  9658.     or.l d6,d0
  9659.     move.w d0,d1    
  9660.  
  9661.         clr.l (a1)+        ; clear source chunky 4 pixels
  9662.  
  9663.     clr.w d0
  9664.     swap d0
  9665.     lsl.l #2,d0
  9666.     lsl.l #2,d1
  9667.  
  9668.     move.l (a4,d0),d5
  9669.     or.l (a3,d1),d5
  9670.  
  9671.  
  9672.     move.l d3,d0        
  9673.     move.l d5,d1
  9674.  
  9675.     and.l d2,d0
  9676.     and.l d2,d1
  9677.  
  9678.     eor.l d0,d3
  9679.     eor.l d1,d5
  9680.  
  9681.     lsr.l #8,d1
  9682.  
  9683.     or.l d1,d0        ; d0 = A1a2c1c2
  9684.  
  9685.     move.l d0,(a2)+        
  9686.  
  9687.     lsl.l #8,d3
  9688.     or.l d5,d3
  9689.  
  9690.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  9691.  
  9692.  
  9693.  
  9694.     dbf d7,Pllb_C2p_NULLSKIP_4bit_512k_1by1_LP
  9695.     rts
  9696.  
  9697.  
  9698. Pllb_C2p_NULLSKIP_4bit_512k_1by1_APEND:
  9699.  
  9700.  
  9701.  
  9702.  
  9703.  
  9704.  
  9705.  
  9706.  
  9707.  
  9708. ; ----------------------------------------------------------------------------
  9709. ; ----------------------------------------------------------------------------
  9710. ; ----------------------------------------------------------------------------
  9711. ; -------------------------DELTA NULLSKIP 4bit Version------------------------
  9712. ; ----------------------------------------------------------------------------
  9713. ; ----------------------------------------------------------------------------
  9714. ; ----------------------------------------------------------------------------
  9715.  
  9716. ;    -    -    -    -    -    -    -    -    -
  9717.  
  9718. ;          >> DeltaNullSkip/CLEAR 16 colour Pllb-C2P <<
  9719.  
  9720. ;                Single pixel Width
  9721.  
  9722. ;               512k fastram version
  9723.  
  9724. ;    -    -    -    -    -    -    -    -    -
  9725.  
  9726.  
  9727. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1:
  9728.  
  9729.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  9730.  
  9731.     ; a4/a5/a6    tables are NOT needed
  9732.  
  9733.     move.l a3,a4
  9734.     add.l #4*$10000,a4
  9735.  
  9736.     move.l #16,a5
  9737.  
  9738.  
  9739.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9740.  
  9741. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_AP:
  9742.  
  9743. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_LP:
  9744.  
  9745.     move.l (a0)+,d5
  9746.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT4
  9747.     move.l (a0)+,d4
  9748.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT3
  9749.     move.l (a0)+,d0
  9750.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT2
  9751.     move.l (a0)+,d6
  9752.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT1
  9753.  
  9754.  
  9755.     tst.b (a6)
  9756.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_nodelta
  9757.  
  9758.         add.l a5,a1
  9759.         add.l #8,a2
  9760.         
  9761.         addq.l #1,a6        
  9762.         dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_LP
  9763.     rts
  9764.  
  9765. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_nodelta:
  9766.  
  9767.         clr.l (a2)+
  9768.         add.l a5,a1
  9769.         clr.l (a2)+
  9770.         clr.b (a6)+
  9771.         
  9772.         dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_LP
  9773.     
  9774.         rts
  9775.         nop
  9776.  
  9777.  
  9778. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT4:
  9779.  
  9780.     move.l (a0)+,d4
  9781.  
  9782. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT3:
  9783.  
  9784.     move.l (a0)+,d0
  9785.  
  9786. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT2:
  9787.  
  9788.     move.l (a0)+,d6
  9789.  
  9790. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_CONT1:
  9791.  
  9792.         st.b (a6)+
  9793.  
  9794.     lsl.l #4,d5
  9795.     clr.l d1
  9796.     or.l d4,d5
  9797.     move.w d5,d1    
  9798.  
  9799.         clr.l (a1)+        ; clear source chunky 4 pixels
  9800.  
  9801.     clr.w d5
  9802.     swap d5
  9803.     lsl.l #2,d5
  9804.     lsl.l #2,d1
  9805.  
  9806.     move.l (a4,d5),d3
  9807.     or.l (a3,d1),d3
  9808.  
  9809.  
  9810.         clr.l (a1)+        ; clear source chunky 4 pixels
  9811.  
  9812.     lsl.l #4,d0
  9813.     clr.l d1
  9814.     or.l d6,d0
  9815.     move.w d0,d1    
  9816.  
  9817.         clr.l (a1)+        ; clear source chunky 4 pixels
  9818.  
  9819.     clr.w d0
  9820.     swap d0
  9821.     lsl.l #2,d0
  9822.     lsl.l #2,d1
  9823.  
  9824.     move.l (a4,d0),d5
  9825.     or.l (a3,d1),d5
  9826.  
  9827.  
  9828.  
  9829.         clr.l (a1)+        ; clear source chunky 4 pixels
  9830.  
  9831.     move.l d3,d0        
  9832.     move.l d5,d1
  9833.  
  9834.     and.l d2,d0
  9835.     and.l d2,d1
  9836.  
  9837.     eor.l d0,d3
  9838.     eor.l d1,d5
  9839.  
  9840.     lsr.l #8,d1
  9841.  
  9842.     or.l d1,d0        ; d0 = A1a2c1c2
  9843.  
  9844.     move.l d0,(a2)+        
  9845.  
  9846.     lsl.l #8,d3
  9847.     or.l d5,d3
  9848.  
  9849.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  9850.  
  9851.  
  9852.  
  9853.     dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_LP
  9854.     rts
  9855.  
  9856.  
  9857. Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_APEND:
  9858.  
  9859.  
  9860.  
  9861.  
  9862.  
  9863.  
  9864. ; ----------------------------------------------------------------------------
  9865. ; ----------------------------------------------------------------------------
  9866. ; ----------------------------------------------------------------------------
  9867. ; ------------------------------NORMAL 4bit Version---------------------------
  9868. ; ----------------------------------------------------------------------------
  9869. ; ----------------------------------------------------------------------------
  9870. ; ----------------------------------------------------------------------------
  9871.  
  9872. ;    -    -    -    -    -    -    -    -    -
  9873.  
  9874. ;                 >> 16 colour Pllb-C2P <<
  9875.  
  9876. ;                Double pixel Width
  9877.  
  9878. ;               512k fastram version
  9879.  
  9880. ;    -    -    -    -    -    -    -    -    -
  9881.  
  9882.  
  9883. Pllb_C2p_4bit_512k_2by1:
  9884.  
  9885.     bsr Pllb_c2p_init_NORMAL_c2p_registers
  9886.  
  9887.     ; a4/a5/a6    tables are NOT needed
  9888.  
  9889.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9890.  
  9891.  
  9892. Pllb_C2p_4bit_512k_2by1_AP:
  9893.  
  9894.     move.l (a0)+,d0
  9895.     move.l (a0)+,d4
  9896.     move.w d0,d1
  9897.     move.w d4,d6
  9898.     nop
  9899.     nop
  9900.     nop
  9901.     bra.b Pllb_C2p_4bit_512k_2by1_SKIP
  9902.  
  9903. Pllb_C2p_4bit_512k_2by1_LP:
  9904.  
  9905.     move.l (a0)+,d0
  9906.     move.l (a0)+,d4
  9907.     move.w d0,d1
  9908.     move.w d4,d6
  9909.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  9910.  
  9911.  
  9912. Pllb_C2p_4bit_512k_2by1_SKIP:
  9913.  
  9914.  
  9915.     clr.w d0
  9916.         clr.w d4
  9917.     swap d0
  9918.         swap d4
  9919.  
  9920.     lsl.w #4,d0
  9921.     lsl.w #4,d4
  9922.  
  9923.     or.w d1,d0
  9924.     or.w d6,d4
  9925.  
  9926.     lsl.l #2,d0
  9927.     lsl.l #2,d4
  9928.  
  9929.     move.l (a3,d0.l),d3
  9930.     move.l (a3,d4.l),d5
  9931.  
  9932.  
  9933.     move.l d3,d0        
  9934.     move.l d5,d1
  9935.  
  9936.     and.l d2,d0
  9937.     and.l d2,d1
  9938.  
  9939.     eor.l d0,d3
  9940.     eor.l d1,d5
  9941.  
  9942.     lsr.l #8,d1
  9943.     or.l d1,d0        ; d0 = A1a2c1c2
  9944.  
  9945.     move.l d0,(a1)+        
  9946.  
  9947.     lsl.l #8,d3
  9948.     or.l d5,d3
  9949.  
  9950.  
  9951.     dbf d7,Pllb_C2p_4bit_512k_2by1_LP
  9952.  
  9953.         move.l d3,(a1)+        ; d3 = b1b2d1d2
  9954.     rts
  9955.  
  9956. Pllb_C2p_4bit_512k_2by1_APEND:
  9957.  
  9958.  
  9959.  
  9960.  
  9961.  
  9962.  
  9963.  
  9964.  
  9965.  
  9966. ; ----------------------------------------------------------------------------
  9967. ; ----------------------------------------------------------------------------
  9968. ; ----------------------------------------------------------------------------
  9969. ; ------------------------------DELTA 4bit Version---------------------------
  9970. ; ----------------------------------------------------------------------------
  9971. ; ----------------------------------------------------------------------------
  9972. ; ----------------------------------------------------------------------------
  9973.  
  9974. ;    -    -    -    -    -    -    -    -    -
  9975.  
  9976. ;                >> DELTA 16 colour Pllb-C2P <<
  9977.  
  9978. ;                Double pixel Width
  9979.  
  9980. ;               512k fastram version
  9981.  
  9982. ;    -    -    -    -    -    -    -    -    -
  9983.  
  9984.  
  9985. Pllb_C2p_DELTA_4bit_512k_2by1:
  9986.  
  9987.     bsr Pllb_c2p_init_DELTA_c2p_registers
  9988.  
  9989.     ; a4/a5/a6    tables are NOT needed
  9990.  
  9991.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  9992.  
  9993.  
  9994. Pllb_C2p_DELTA_4bit_512k_2by1_AP:
  9995.  
  9996. Pllb_C2p_DELTA_4bit_512k_2by1_LP:
  9997.  
  9998.     move.l (a0)+,d5
  9999.     move.l (a0)+,d4
  10000.  
  10001.     cmp.l (a1)+,d5
  10002.     bne.b Pllb_C2p_DELTA_4bit_512k_2by1_cont2
  10003.  
  10004.     cmp.l (a1)+,d4
  10005.     bne.b Pllb_C2p_DELTA_4bit_512k_2by1_cont1
  10006.  
  10007.         addq.l #8,a2
  10008.     
  10009.  
  10010.         dbf d7,Pllb_C2p_DELTA_4bit_512k_2by1_LP
  10011.  
  10012.         rts
  10013.  
  10014. Pllb_C2p_DELTA_4bit_512k_2by1_cont2:
  10015.  
  10016.     addq.l #4,a1
  10017.     nop
  10018.  
  10019. Pllb_C2p_DELTA_4bit_512k_2by1_cont1:
  10020.  
  10021.     move.w d5,d1
  10022.     move.w d4,d3
  10023.     clr.w d4
  10024.     clr.w d5
  10025.     swap d5
  10026.     swap d4
  10027.  
  10028.     lsl.w #4,d5
  10029.      lsl.w #4,d4
  10030.     or.w d1,d5
  10031.     or.w d3,d4
  10032.     lsl.l #2,d5
  10033.     lsl.l #2,d4
  10034.     move.l (a3,d5.l),d3
  10035.     move.l (a3,d4.l),d5
  10036.  
  10037.     move.l d3,d0        
  10038.     move.l d5,d1
  10039.  
  10040.     and.l d2,d0
  10041.     and.l d2,d1
  10042.  
  10043.     eor.l d0,d3
  10044.     eor.l d1,d5
  10045.  
  10046.     lsr.l #8,d1
  10047.     or.l d1,d0        ; d0 = A1a2c1c2
  10048.  
  10049.     move.l d0,(a2)+        
  10050.  
  10051.     lsl.l #8,d3
  10052.     or.l d5,d3
  10053.  
  10054.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  10055.  
  10056.  
  10057.     dbf d7,Pllb_C2p_DELTA_4bit_512k_2by1_LP
  10058.     rts
  10059.  
  10060.  
  10061. Pllb_C2p_DELTA_4bit_512k_2by1_APEND:
  10062.  
  10063.  
  10064.  
  10065.  
  10066.  
  10067.  
  10068.  
  10069.  
  10070.  
  10071. ; ----------------------------------------------------------------------------
  10072. ; ----------------------------------------------------------------------------
  10073. ; ----------------------------------------------------------------------------
  10074. ; ----------------------------NULLSKIP 4bit Version---------------------------
  10075. ; ----------------------------------------------------------------------------
  10076. ; ----------------------------------------------------------------------------
  10077. ; ----------------------------------------------------------------------------
  10078.  
  10079. ;    -    -    -    -    -    -    -    -    -
  10080.  
  10081. ;             >> NULLSKIP/ClEAR 16 colour Pllb-C2P <<
  10082.  
  10083. ;                Double pixel Width
  10084.  
  10085. ;               512k fastram version
  10086.  
  10087. ;    -    -    -    -    -    -    -    -    -
  10088.  
  10089.  
  10090. Pllb_C2p_NULLSKIP_4bit_512k_2by1:
  10091.  
  10092.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  10093.  
  10094.     ; a4/a5/a6    tables are NOT needed
  10095.  
  10096.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  10097.  
  10098.  
  10099.  
  10100. Pllb_C2p_NULLSKIP_4bit_512k_2by1_AP:
  10101.  
  10102. Pllb_C2p_NULLSKIP_4bit_512k_2by1_LP:
  10103.  
  10104.     move.l (a0)+,d5
  10105.     bne.b Pllb_C2p_NULLSKIP_4bit_512k_2by1_Cont2
  10106.     move.l (a0)+,d4
  10107.     bne.b Pllb_C2p_NULLSKIP_4bit_512k_2by1_Cont1
  10108.  
  10109.         clr.l (a2)+
  10110.         addq.l #8,a1
  10111.         clr.l (a2)+
  10112.         dbf d7,Pllb_C2p_NULLSKIP_4bit_512k_2by1_LP
  10113.     rts
  10114.     nop
  10115.  
  10116.  
  10117. Pllb_C2p_NULLSKIP_4bit_512k_2by1_Cont2:
  10118.  
  10119.     move.l (a0)+,d4
  10120.  
  10121. Pllb_C2p_NULLSKIP_4bit_512k_2by1_Cont1:
  10122.     
  10123.         clr.l (a1)+        ; clear 4 chunky pixels
  10124.  
  10125.  
  10126.     move.w d5,d1
  10127.     move.w d4,d3
  10128.     clr.w d4
  10129.     clr.w d5
  10130.     swap d5
  10131.     swap d4
  10132.  
  10133.  
  10134.         clr.l (a1)+        ; clear 4 chunky pixels
  10135.  
  10136.  
  10137.     lsl.w #4,d5
  10138.      lsl.w #4,d4
  10139.     or.w d1,d5
  10140.     or.w d3,d4
  10141.     lsl.l #2,d5
  10142.     lsl.l #2,d4
  10143.     move.l (a3,d5.l),d3
  10144.     move.l (a3,d4.l),d5
  10145.  
  10146.     move.l d3,d0        
  10147.     move.l d5,d1
  10148.  
  10149.     and.l d2,d0
  10150.     and.l d2,d1
  10151.  
  10152.     eor.l d0,d3
  10153.     eor.l d1,d5
  10154.  
  10155.     lsr.l #8,d1
  10156.     or.l d1,d0        ; d0 = A1a2c1c2
  10157.  
  10158.     move.l d0,(a2)+        
  10159.  
  10160.     lsl.l #8,d3
  10161.     or.l d5,d3
  10162.  
  10163.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  10164.  
  10165.     dbf d7,Pllb_C2p_NULLSKIP_4bit_512k_2by1_lp
  10166.  
  10167.     rts
  10168.  
  10169.  
  10170. Pllb_C2p_NULLSKIP_4bit_512k_2by1_APEND:
  10171.  
  10172.  
  10173.  
  10174.  
  10175.  
  10176.  
  10177.  
  10178.  
  10179.  
  10180. ; ----------------------------------------------------------------------------
  10181. ; ----------------------------------------------------------------------------
  10182. ; ----------------------------------------------------------------------------
  10183. ; ------------------------DELTA NULLSKIP 4bit Version-------------------------
  10184. ; ----------------------------------------------------------------------------
  10185. ; ----------------------------------------------------------------------------
  10186. ; ----------------------------------------------------------------------------
  10187.  
  10188. ;    -    -    -    -    -    -    -    -    -
  10189.  
  10190. ;             >> DeltaNullSkip/ClEAR 16 colour Pllb-C2P <<
  10191.  
  10192. ;                Double pixel Width
  10193.  
  10194. ;               512k fastram version
  10195.  
  10196. ;    -    -    -    -    -    -    -    -    -
  10197.  
  10198.  
  10199. Pllb_C2p_DeltaNullSkip_4bit_512k_2by1:
  10200.  
  10201.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  10202.  
  10203.     ; a4/a5/a6    tables are NOT needed
  10204.  
  10205.  
  10206.     move.l #8,a5
  10207.  
  10208.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  10209.  
  10210.  
  10211.  
  10212. Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_AP:
  10213.  
  10214. Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_LP:
  10215.  
  10216.     move.l (a0)+,d5
  10217.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_Cont2
  10218.     move.l (a0)+,d4
  10219.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_Cont1
  10220.  
  10221.  
  10222.     tst.b (a6)
  10223.     bne.w Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_nodelta
  10224.  
  10225.         add.l a5,a1
  10226.         addq.l #8,a2
  10227.         
  10228.         addq.l #1,a6        
  10229.         dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_LP
  10230.     rts
  10231.  
  10232. Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_nodelta:
  10233.  
  10234.         clr.l (a2)+
  10235.         add.l a5,a1
  10236.         clr.l (a2)+
  10237.         clr.b (a6)+
  10238.         
  10239.         dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_LP
  10240.  
  10241.  
  10242.     rts
  10243.     nop
  10244.  
  10245.  
  10246. Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_Cont2:
  10247.  
  10248.     move.l (a0)+,d4
  10249.  
  10250. Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_Cont1:
  10251.     
  10252.         st.b (a6)+
  10253.  
  10254.  
  10255.     move.w d5,d1
  10256.     move.w d4,d3
  10257.     clr.w d4
  10258.     clr.w d5
  10259.     swap d5
  10260.     swap d4
  10261.  
  10262.  
  10263.         clr.l (a1)+        ; clear 4 chunky pixels
  10264.  
  10265.  
  10266.     lsl.w #4,d5
  10267.      lsl.w #4,d4
  10268.     or.w d1,d5
  10269.     or.w d3,d4
  10270.     lsl.l #2,d5
  10271.     lsl.l #2,d4
  10272.     move.l (a3,d5.l),d3
  10273.     move.l (a3,d4.l),d5
  10274.  
  10275.  
  10276.  
  10277.         clr.l (a1)+        ; clear 4 chunky pixels
  10278.  
  10279.     move.l d3,d0        
  10280.     move.l d5,d1
  10281.  
  10282.     and.l d2,d0
  10283.     and.l d2,d1
  10284.  
  10285.     eor.l d0,d3
  10286.     eor.l d1,d5
  10287.  
  10288.     lsr.l #8,d1
  10289.     or.l d1,d0        ; d0 = A1a2c1c2
  10290.  
  10291.     move.l d0,(a2)+        
  10292.  
  10293.     lsl.l #8,d3
  10294.     or.l d5,d3
  10295.  
  10296.     move.l d3,(a2)+        ; d3 = b1b2d1d2
  10297.  
  10298.     dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_lp
  10299.  
  10300.     rts
  10301.  
  10302.  
  10303. Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_APEND:
  10304.  
  10305.  
  10306.  
  10307.  
  10308.  
  10309.  
  10310.  
  10311.  
  10312.  
  10313. ; ----------------------------------------------------------------------------
  10314. ; ----------------------------------------------------------------------------
  10315. ; ----------------------------------------------------------------------------
  10316. ; ------------------------------NORMAL 4bit Version---------------------------
  10317. ; ----------------------------------------------------------------------------
  10318. ; ----------------------------------------------------------------------------
  10319. ; ----------------------------------------------------------------------------
  10320.  
  10321. ;    -    -    -    -    -    -    -    -    -
  10322.  
  10323. ;                 >> 16 colour Pllb-C2P <<
  10324.  
  10325. ;                Quad pixel Width
  10326.  
  10327. ;               512k fastram version
  10328.  
  10329. ;    -    -    -    -    -    -    -    -    -
  10330.  
  10331.  
  10332. Pllb_C2p_4bit_512k_4by1:
  10333.  
  10334.     bsr Pllb_c2p_init_NORMAL_c2p_registers
  10335.  
  10336.     ; a4/a5/a6    tables are NOT needed
  10337.  
  10338.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  10339.  
  10340.  
  10341. Pllb_C2p_4bit_512k_4by1_AP:
  10342.  
  10343. Pllb_C2p_4bit_512k_4by1_LP:
  10344.  
  10345.     move.l (a0)+,d0
  10346.     move.w d0,d1
  10347.         clr.w d0
  10348.     lsl.b #4,d1
  10349.         swap d0
  10350.     lsr.w #4,d1
  10351.         lsl.b #4,d0
  10352.     lsl.w #4,d0
  10353.     move.b d1,d0
  10354.     lsl.l #3,d0
  10355.     move.l (a3,d0.l),(a1)+
  10356.     move.l 4(a3,d0.l),(a1)+
  10357.  
  10358.     dbf d7,Pllb_C2p_4bit_512k_4by1_LP
  10359.     rts
  10360.  
  10361.  
  10362. Pllb_C2p_4bit_512k_4by1_APEND:
  10363.  
  10364.  
  10365.  
  10366.  
  10367.  
  10368.  
  10369. ;    -    -    -    -    -    -    -    -    -
  10370.  
  10371. ;                >> DELTA 16 colour Pllb-C2P <<
  10372.  
  10373. ;                Quad pixel Width
  10374.  
  10375. ;               512k fastram version
  10376.  
  10377. ;    -    -    -    -    -    -    -    -    -
  10378.  
  10379.  
  10380. Pllb_C2p_Delta_4bit_512k_4by1:
  10381.  
  10382.     bsr Pllb_c2p_init_DELTA_c2p_registers
  10383.  
  10384.     ; a4/a5/a6    tables are NOT needed
  10385.  
  10386.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  10387.  
  10388. Pllb_C2p_Delta_4bit_512k_4by1_AP:
  10389.  
  10390.  
  10391. Pllb_C2p_Delta_4bit_512k_4by1_LP:
  10392.  
  10393.  
  10394.     move.l (a0)+,d0
  10395.  
  10396.     cmp.l (a1)+,d0
  10397.     bne.b Pllb_C2p_Delta_4bit_512k_4by1_Cont
  10398.  
  10399.         addq.l #8,a2
  10400.  
  10401.         dbf d7,Pllb_C2p_Delta_4bit_512k_4by1_LP    
  10402.     rts
  10403.     
  10404. Pllb_C2p_Delta_4bit_512k_4by1_Cont:
  10405.  
  10406.         move.w d0,d1
  10407.             clr.w d0
  10408.         lsl.b #4,d1
  10409.             swap d0
  10410.         lsr.w #4,d1
  10411.             lsl.b #4,d0
  10412.         lsl.w #4,d0
  10413.         move.b d1,d0    
  10414.         lsl.l #3,d0
  10415.         move.l (a3,d0.l),(a2)+
  10416.         move.l 4(a3,d0.l),(a2)+
  10417.  
  10418.  
  10419.         dbf d7,Pllb_C2p_Delta_4bit_512k_4by1_LP    
  10420.  
  10421.     rts
  10422.  
  10423. Pllb_C2p_Delta_4bit_512k_4by1_APEND:
  10424.  
  10425.  
  10426.  
  10427.  
  10428.  
  10429.  
  10430. ;    -    -    -    -    -    -    -    -    -
  10431.  
  10432. ;           >> NULLSKIP/CLEAR 16 colour Pllb-C2P <<
  10433.  
  10434. ;                Quad pixel Width
  10435.  
  10436. ;               512k fastram version
  10437.  
  10438. ;    -    -    -    -    -    -    -    -    -
  10439.  
  10440.  
  10441. Pllb_C2p_NULLSKIP_4bit_512k_4by1:
  10442.  
  10443.     bsr Pllb_c2p_init_NULLSKIP_c2p_registers
  10444.  
  10445.     ; a4/a5/a6    tables are NOT needed
  10446.  
  10447.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  10448.  
  10449.  
  10450. Pllb_C2p_NULLSKIP_4bit_512k_4by1_AP:
  10451.  
  10452. Pllb_C2p_NULLSKIP_4bit_512k_4by1_LP:
  10453.  
  10454.     move.l (a0)+,d0
  10455.     bne.b Pllb_C2p_NULLSKIP_4bit_512k_4by1_CONT
  10456.  
  10457.         clr.l (a2)+
  10458.     
  10459.             addq.l #4,a1
  10460.     
  10461.         clr.l (a2)+
  10462.  
  10463.         dbf d7,Pllb_C2p_NULLSKIP_4bit_512k_4by1_LP
  10464.     rts
  10465.  
  10466. Pllb_C2p_NULLSKIP_4bit_512k_4by1_Cont:
  10467.  
  10468.             clr.l (a1)+
  10469.  
  10470.         move.w d0,d1
  10471.             clr.w d0
  10472.         lsl.b #4,d1
  10473.             swap d0
  10474.         lsr.w #4,d1
  10475.             lsl.b #4,d0
  10476.         lsl.w #4,d0
  10477.         move.b d1,d0    
  10478.         lsl.l #3,d0
  10479.         move.l (a3,d0.l),(a2)+
  10480.         move.l 4(a3,d0.l),(a2)+
  10481.  
  10482.  
  10483.     dbf d7,Pllb_C2p_NULLSKIP_4bit_512k_4by1_LP
  10484.  
  10485.     rts
  10486.  
  10487.  
  10488. Pllb_C2p_NULLSKIP_4bit_512k_4by1_APEND:
  10489.  
  10490.  
  10491.  
  10492.  
  10493.  
  10494.  
  10495.  
  10496.  
  10497. ;    -    -    -    -    -    -    -    -    -
  10498.  
  10499. ;           >> DELTANULLSKIP/CLEAR 16 colour Pllb-C2P <<
  10500.  
  10501. ;                Quad pixel Width
  10502.  
  10503. ;               512k fastram version
  10504.  
  10505. ;    -    -    -    -    -    -    -    -    -
  10506.  
  10507.  
  10508. Pllb_C2p_DeltaNullSkip_4bit_512k_4by1:
  10509.  
  10510.     bsr Pllb_c2p_init_DeltaNullSkip_c2p_registers
  10511.  
  10512.     ; a4/a5/a6    tables are NOT needed
  10513.  
  10514.     move.l #4,a5
  10515.  
  10516.     blk.w 32,$4e71        ; insert NOP's to ensure routine alignment
  10517.  
  10518.  
  10519. Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_AP:
  10520.  
  10521. Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_LP:
  10522.  
  10523.     move.l (a0)+,d0
  10524.     bne.b Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_CONT
  10525.  
  10526.  
  10527.     tst.b (a6)
  10528.     bne.w Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_nodelta
  10529.  
  10530.         add.l a5,a1
  10531.  
  10532.         addq.l #8,a2
  10533.         
  10534.         addq.l #1,a6        
  10535.         dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_LP
  10536.     rts
  10537.  
  10538. Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_nodelta:
  10539.  
  10540.         clr.l (a2)+
  10541.         add.l a5,a1
  10542.         clr.l (a2)+
  10543.         clr.b (a6)+
  10544.         
  10545.         dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_LP
  10546.  
  10547.     rts
  10548.  
  10549.  
  10550. Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_Cont:
  10551.  
  10552.             clr.l (a1)+
  10553.  
  10554.         move.w d0,d1
  10555.             clr.w d0
  10556.         lsl.b #4,d1
  10557.             swap d0
  10558.         lsr.w #4,d1
  10559.             lsl.b #4,d0
  10560.  
  10561.             st.b (a6)+
  10562.  
  10563.         lsl.w #4,d0
  10564.         move.b d1,d0    
  10565.         lsl.l #3,d0
  10566.         move.l (a3,d0.l),(a2)+
  10567.         move.l 4(a3,d0.l),(a2)+
  10568.  
  10569.  
  10570.     dbf d7,Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_LP
  10571.  
  10572.     rts
  10573.  
  10574.  
  10575. Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_APEND:
  10576.  
  10577.  
  10578.  
  10579.  
  10580.  
  10581.  
  10582.  
  10583. ;    -    -    -    -    -    -    -    -    -
  10584.  
  10585.  
  10586. ;         >> Handle The Blitter Bitplane Copy/Resorting <<
  10587.  
  10588.  
  10589. ;    -    -    -    -    -    -    -    -    -
  10590.  
  10591.  
  10592. Pllb_c2p_Init_BlitterResort_Table:
  10593.  
  10594.     tst.w Pllb_C2p_Enabled_Flag
  10595.     beq.b Pllb_c2p_Init_BlitterResort_Table_DONE
  10596.  
  10597.         lea.l Pllb_c2p_Init_blitterResort_colourdepth(pc),a0
  10598.         move.w Pllb_C2p_ColourDepth(pc),d0
  10599.         move.l (a0,d0.w),a0    
  10600.         jmp (a0)
  10601.  
  10602. Pllb_c2p_Init_BlitterResort_Table_DONE:
  10603.     rts
  10604.  
  10605.  
  10606. Pllb_c2p_Init_blitterResort_colourdepth:
  10607.  
  10608.     dc.l Pllb_c2p_Init_16colour_blitter
  10609.     dc.l Pllb_c2p_Init_64colour_blitter
  10610.     dc.l Pllb_c2p_Init_256colour_blitter
  10611.  
  10612.  
  10613. Pllb_c2p_Init_16colour_blitter:
  10614.  
  10615.     clr.w Pllb_C2p_blit_Flag    
  10616.     move.w #4,Pllb_C2p_blit_Bitplane_Max
  10617.     clr.w Pllb_C2p_blit_Bitplane
  10618.  
  10619.     move.w PLLB_C2P_BitPLane_Size(pc),Pllb_C2p_blit_PlaneSize
  10620.  
  10621.     bsr Pllb_C2P_GetScreenSize
  10622.     move.w d0,Pllb_C2p_blit_PlaneSize2
  10623.  
  10624.     move.w #8-2,Pllb_C2p_blit_Blit_AModulo
  10625.     clr.w Pllb_C2p_blit_Blit_DModulo
  10626.  
  10627.     lea.l Pllb_C2p_blit_Source_Offset_Table(pc),a0
  10628.     lea.l Pllb_c2p_8bitplane_offset_table(pc),a1
  10629.     move.l (a1)+,(a0)+
  10630.     move.l (a1)+,(a0)+
  10631.     rts
  10632.  
  10633.  
  10634. Pllb_c2p_Init_64colour_blitter:
  10635.     clr.w Pllb_C2p_blit_Flag    
  10636.     move.w #6,Pllb_C2p_blit_Bitplane_Max
  10637.     clr.w Pllb_C2p_blit_Bitplane
  10638.  
  10639.     move.w PLLB_C2P_BitPLane_Size(pc),Pllb_C2p_blit_PlaneSize
  10640.  
  10641.  
  10642.     bsr Pllb_C2P_GetScreenSize
  10643.     move.w d0,Pllb_C2p_blit_PlaneSize2
  10644.  
  10645.     move.w #12-2,Pllb_C2p_blit_Blit_AModulo
  10646.     clr.w Pllb_C2p_blit_Blit_DModulo
  10647.  
  10648.     lea.l Pllb_C2p_blit_Source_Offset_Table(pc),a0
  10649.     lea.l Pllb_c2p_6bitplane_offset_table(pc),a1
  10650.  
  10651.     move.l (a1)+,(a0)+
  10652.     move.l (a1)+,(a0)+
  10653.     move.l (a1)+,(a0)+
  10654.     rts
  10655.  
  10656.  
  10657.  
  10658.  
  10659. Pllb_c2p_Init_256colour_blitter:
  10660.  
  10661.     clr.w Pllb_C2p_blit_Flag    
  10662.     move.w #8,Pllb_C2p_blit_Bitplane_Max
  10663.     clr.w Pllb_C2p_blit_Bitplane
  10664.  
  10665.     move.w PLLB_C2P_BitPLane_Size(pc),Pllb_C2p_blit_PlaneSize
  10666.  
  10667.     bsr Pllb_C2P_GetScreenSize
  10668.     move.w d0,Pllb_C2p_blit_PlaneSize2
  10669.     move.w #16-2,Pllb_C2p_blit_Blit_AModulo
  10670.     clr.w Pllb_C2p_blit_Blit_DModulo
  10671.  
  10672.     lea.l Pllb_C2p_blit_Source_Offset_Table(pc),a0
  10673.     lea.l Pllb_c2p_8bitplane_offset_table(pc),a1
  10674.     move.l (a1)+,(a0)+
  10675.     move.l (a1)+,(a0)+
  10676.     move.l (a1)+,(a0)+
  10677.     move.l (a1)+,(a0)+
  10678.     rts
  10679.  
  10680.  
  10681. Pllb_c2p_8bitplane_offset_table:    dc.w 0,4,2,6,8,12,10,14
  10682. Pllb_c2p_6bitplane_offset_table:    dc.w 0,4,2,6,10,8,0,0
  10683.  
  10684.  
  10685. ;    -    -    -    -    -    -    -    -    -
  10686.  
  10687. ;           >> PLLB_C2P Screen sizes in pixels <<
  10688.  
  10689. ;    -    -    -    -    -    -    -    -    -
  10690.  
  10691.  
  10692. Pllb_C2P_GetScreenSize:
  10693.  
  10694.     moveq.l #0,d0
  10695.     move.w  PLLB_C2P_ChunkyScreenWidth(pc),d0
  10696.     lsr.l #4,d0                    ; divu d0 by 16     
  10697.     mulu  PLLB_C2P_ChunkyScreenHeight(pc),d0
  10698.     move.w d0,PLLB_C2P_ChunkyScreenSize
  10699.     rts
  10700.     
  10701.  
  10702.  
  10703.  
  10704. PLLB_C2P_ChunkyScreenWidth:    dc.w 0    ; ChunkyScreen width in pixels
  10705. PLLB_C2P_ChunkyScreenHeight:    dc.w 0    ; ChunkyScreen_Height in pixels
  10706. PLLB_C2P_ChunkyScreenSize:    dc.w 0    ; (screen width/16)*screenheight
  10707.  
  10708.  
  10709. PLLB_C2P_BitPLane_Size:        dc.w 0
  10710.  
  10711.  
  10712.  
  10713. Pllb_C2p_blit_Flag:          dc.w 0
  10714. Pllb_C2p_blit_Bitplane_Max:      dc.w 8    ; Max Numb of bitplanes
  10715. Pllb_C2p_blit_Bitplane:          dc.w 0
  10716. Pllb_C2p_blit_PlaneSize:      dc.w 40*255   ; Width in Byte * height !!
  10717. Pllb_C2p_blit_PlaneSize2:      dc.w 20*255   ; Width in words * height !!
  10718. Pllb_C2p_blit_Blit_AModulo:      dc.w (16-2)    ; SRC modulo 
  10719. Pllb_C2p_blit_Blit_DModulo:      dc.w 0        ; Dest Modulo
  10720. Pllb_C2p_blit_Source_Offset_Table:      dc.w 0,4,2,6,8,12,10,14
  10721.  
  10722. Pllb_C2P_Temp_Image_buffer:    dc.l 0        ; Buffer Must Be CHIPRAM
  10723. Pllb_C2P_Display_Frame_buffer:    dc.l 0
  10724.  
  10725. Pllb_C2P_Chunky_Frame_bufferA:    dc.l 0
  10726. Pllb_C2P_Chunky_Frame_bufferB    dc.l 0
  10727.  
  10728.  
  10729.  
  10730.  
  10731. Pllb_C2p_blitter_resort_frame:
  10732.  
  10733.     tst.w Pllb_C2p_blit_flag            ; Check if C2P flag is set
  10734.     beq.w Pllb_C2p_blitter_resort_frame_done
  10735.  
  10736.         btst #14,$dff002        ; check if blitter active
  10737.         bne.b Pllb_C2p_blitter_resort_frame_done
  10738.  
  10739. Pllb_C2p_blitter_resort_frame2:
  10740.  
  10741.     movem.l d0/a0/a1/a6,-(a7)
  10742.  
  10743.     moveq.l #0,d0
  10744.     
  10745.     Move.l Pllb_C2p_Temp_Image_buffer,a0
  10746.     move.w Pllb_C2p_blit_Bitplane(pc),d0
  10747.     lsl.w #1,d0
  10748.     move.w Pllb_C2p_blit_source_offset_table(pc,d0),d0
  10749.  
  10750.     add.l d0,a0
  10751.  
  10752.  
  10753.     move.l Pllb_C2P_Display_Frame_buffer(pc),a1
  10754.     move.w Pllb_C2p_blit_PlaneSize(pc),d0    
  10755.     mulu Pllb_C2p_blit_Bitplane(pc),d0        ; d1 = bitplanesize * bitplane 
  10756.     add.l d0,a1
  10757.  
  10758.     lea.l $dff040,a6        ; a6 ='s hardware base
  10759.  
  10760.     move.l #$09f00000,(a6)+        ; set miniterm and enable channels A&D
  10761.     move.l #$ffffffff,(a6)+        ; set end of line masks    
  10762.     move.l Pllb_C2p_blit_Blit_AModulo(pc),$64-$48(a6)
  10763.  
  10764.  
  10765.     move.l a0,$50-$48(a6)
  10766.     move.l a1,$54-$48(a6)
  10767.     move.w Pllb_C2p_blit_PlaneSize2(pc),$5c-$48(a6)    ; Height
  10768.     move.w #1,$5e-$48(a6)                ; width
  10769.  
  10770.     lea.l Pllb_C2p_blit_Bitplane_max(pc),a0
  10771.     move.w (a0)+,d0
  10772.  
  10773.     addq.w #1,(a0)
  10774.  
  10775.     cmp.w (a0),d0
  10776.     bne.b Pllb_C2p_blitter_resort_frame_done2    
  10777.  
  10778.         clr.w (a0)        ;reset Bitplane counter
  10779.         clr.w Pllb_C2p_blit_flag
  10780.  
  10781. Pllb_C2p_blitter_resort_frame_done2:
  10782.  
  10783.     movem.l (a7)+,d0/a0/a1/a6
  10784.  
  10785. Pllb_C2p_blitter_resort_frame_done:
  10786.  
  10787.     rts
  10788.  
  10789.  
  10790.  
  10791.  
  10792.  
  10793.  
  10794.  
  10795.  
  10796.  
  10797.  
  10798.  
  10799.  
  10800.  
  10801. ;    -    -    -    -    -    -    -    -    -
  10802.  
  10803. ;            >> PLLB-C2P init Precalc Tables <<
  10804.  
  10805. ;    -    -    -    -    -    -    -    -    -
  10806.  
  10807.  
  10808.  
  10809.  
  10810.  
  10811. Pllb_C2p_init_precalc_tables:
  10812.  
  10813.         tst.w Pllb_C2p_Enabled_Flag
  10814.         beq.b Pllb_C2p_init_precalc_tables_Done
  10815.  
  10816.         moveq.l #0,d0
  10817.         lea.l Pllb_C2p_Init_ColourDepthArray(pc),a0
  10818.         move.w Pllb_C2p_ColourDepth(pc),d0
  10819.         move.l (a0,d0.w),a0    
  10820.  
  10821.         move.w Pllb_C2p_PixelWidth(pc),d0
  10822.         mulu #16,d0
  10823.         add.l d0,a0
  10824.  
  10825.         move.w PllB_C2p_FastRam_BUfferSize(pc),d0
  10826.         add.l d0,a0
  10827.  
  10828.         move.l (a0),a0
  10829.         jsr (a0)
  10830.  
  10831. Pllb_C2p_init_precalc_tables_Done:
  10832.  
  10833.     rts
  10834.  
  10835.  
  10836. Pllb_C2p_Init_ColourDepthArray:
  10837.  
  10838.     dc.l Pllb_C2p_init_4bit_tables_array
  10839.     dc.l Pllb_C2p_init_8bit_tables_array    ;6bit tables, the same as 8bit
  10840.     dc.l Pllb_C2p_init_8bit_tables_array
  10841.  
  10842.  
  10843. Pllb_C2p_init_4bit_tables_array:
  10844.  
  10845.     ; 4bit single pixel width
  10846.  
  10847.     dc.l Pllb_C2p_init_4Bit_1by1_512k_tables
  10848.     dc.l Pllb_C2p_init_4Bit_1by1_512k_tables
  10849.     dc.l Pllb_C2p_init_4Bit_1by1_512k_tables
  10850.     dc.l Pllb_C2p_init_4Bit_1by1_512k_tables
  10851.  
  10852.     ; 4bit double pixel width
  10853.  
  10854.     dc.l Pllb_C2p_init_4Bit_2by1_512k_tables
  10855.     dc.l Pllb_C2p_init_4Bit_2by1_512k_tables
  10856.     dc.l Pllb_C2p_init_4Bit_2by1_512k_tables
  10857.     dc.l Pllb_C2p_init_4Bit_2by1_512k_tables
  10858.  
  10859.     ; 4bit Quad pixel width
  10860.  
  10861.     dc.l Pllb_C2p_init_4Bit_4by1_512k_tables
  10862.     dc.l Pllb_C2p_init_4Bit_4by1_512k_tables
  10863.     dc.l Pllb_C2p_init_4Bit_4by1_512k_tables
  10864.     dc.l Pllb_C2p_init_4Bit_4by1_512k_tables
  10865.  
  10866.  
  10867.  
  10868.  
  10869. Pllb_C2p_init_8bit_tables_array:
  10870.  
  10871.     ; 8bit single pixel width
  10872.  
  10873.     dc.l Pllb_C2p_init_8Bit_1by1_512k_tables
  10874.     dc.l Pllb_C2p_init_8Bit_1by1_1Meg_tables
  10875.     dc.l Pllb_C2p_init_8Bit_1by1_1_5Meg_tables
  10876.     dc.l Pllb_C2p_init_8Bit_1by1_2Meg_tables
  10877.  
  10878.     ; 8bit double pixel width
  10879.  
  10880.     dc.l Pllb_C2p_init_8Bit_2by1_512k_tables
  10881.     dc.l Pllb_C2p_init_8Bit_2by1_1meg_tables
  10882.     dc.l Pllb_C2p_init_8Bit_2by1_1meg_tables
  10883.     dc.l Pllb_C2p_init_8Bit_2by1_1meg_tables
  10884.  
  10885.     ; 8bit quad pixel width
  10886.  
  10887.     dc.l Pllb_C2p_init_8Bit_4by1_512k_tables
  10888.     dc.l Pllb_C2p_init_8Bit_4by1_512k_tables
  10889.     dc.l Pllb_C2p_init_8Bit_4by1_512k_tables
  10890.     dc.l Pllb_C2p_init_8Bit_4by1_512k_tables
  10891.  
  10892.  
  10893.  
  10894. ;    -    -    -    -    -    -    -    -    -
  10895.  
  10896.  
  10897.  
  10898.  
  10899.  
  10900. Pllb_C2p_init_8bit_pixelwidth2:
  10901.  
  10902.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a0
  10903.  
  10904.     moveq.l #0,d0
  10905.  
  10906.     move.w #255,d7
  10907.  
  10908. Pllb_C2p_init_8bit_pixelwidth2_LP:
  10909.  
  10910.  
  10911.     move.l d0,d1
  10912.  
  10913.  
  10914.     move.l d1,d2
  10915.     and.b #1,d2
  10916.     lsl.l #8,d2
  10917.     lsr.l #1,d1
  10918.  
  10919.     move.b d1,d2
  10920.     and.b #1,d2
  10921.     lsl.l #8,d2
  10922.     lsr.l #1,d1
  10923.  
  10924.     move.b d1,d2
  10925.     and.b #1,d2
  10926.     lsl.l #8,d2
  10927.     lsr.l #1,d1
  10928.  
  10929.     move.b d1,d2
  10930.     and.b #1,d2
  10931.     lsr.l #1,d1
  10932.  
  10933.     move.l d2,d3        ; merge (double bits)
  10934.     lsl.l #1,d2
  10935.     or.l d3,d2
  10936.     move.l d2,(a0)+
  10937.  
  10938.  
  10939.     move.b d1,d2
  10940.     and.b #1,d2
  10941.     lsl.l #8,d2
  10942.     lsr.l #1,d1
  10943.  
  10944.     move.b d1,d2
  10945.     and.b #1,d2
  10946.     lsl.l #8,d2
  10947.     lsr.l #1,d1
  10948.  
  10949.     move.b d1,d2
  10950.     and.b #1,d2
  10951.     lsl.l #8,d2
  10952.     lsr.l #1,d1
  10953.  
  10954.     move.b d1,d2
  10955.     and.b #1,d2
  10956.     lsr.l #1,d1
  10957.  
  10958.     move.l d2,d3        ; merge (double bits)
  10959.     lsl.l #1,d2
  10960.     or.l d3,d2
  10961.     move.l d2,(a0)+
  10962.  
  10963.     addq.l #1,d0
  10964.     dbf d7,Pllb_C2p_init_8bit_pixelwidth2_LP
  10965.  
  10966.     rts
  10967.     
  10968.  
  10969.  
  10970.  
  10971.  
  10972.  
  10973.  
  10974.  
  10975.  
  10976.  
  10977.  
  10978.  
  10979.  
  10980. Pllb_C2p_init_8bit_pixelwidth1:
  10981.  
  10982.  
  10983.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a0
  10984.  
  10985.  
  10986.     moveq.l #0,d0
  10987.  
  10988.     move.w #255,d7
  10989.  
  10990. Pllb_C2p_init_8bit_pixelwidth1_lp:
  10991.  
  10992.     move.l d0,d1
  10993.  
  10994.     move.l d1,d2
  10995.     and.b #1,d2
  10996.     move.b d2,(a0)+
  10997.     lsr.l #1,d1
  10998.  
  10999.     move.l d1,d2
  11000.     and.b #1,d2
  11001.     move.b d2,(a0)+
  11002.     lsr.l #1,d1
  11003.  
  11004.     move.l d1,d2
  11005.     and.b #1,d2
  11006.     move.b d2,(a0)+
  11007.     lsr.l #1,d1
  11008.  
  11009.     move.l d1,d2
  11010.     and.b #1,d2
  11011.     move.b d2,(a0)+
  11012.     lsr.l #1,d1
  11013.  
  11014.     move.l d1,d2
  11015.     and.b #1,d2
  11016.     move.b d2,(a0)+
  11017.     lsr.l #1,d1
  11018.  
  11019.     move.l d1,d2
  11020.     and.b #1,d2
  11021.     move.b d2,(a0)+
  11022.     lsr.l #1,d1
  11023.  
  11024.     move.l d1,d2
  11025.     and.b #1,d2
  11026.     move.b d2,(a0)+
  11027.     lsr.l #1,d1
  11028.     move.b d1,(a0)+
  11029.  
  11030.     addq.l #1,d0
  11031.     dbf d7,Pllb_C2p_init_8bit_pixelwidth1_lp
  11032.     rts
  11033.     
  11034.  
  11035.  
  11036.  
  11037.  
  11038.  
  11039.  
  11040.  
  11041.  
  11042. Pllb_C2p_init_8bit_pixelwidth4:
  11043.  
  11044.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a0
  11045.  
  11046.     moveq.l #0,d0
  11047.  
  11048.     move.w #255,d7
  11049.  
  11050. Pllb_C2p_init_8bit_pixelwidth4_lp:
  11051.  
  11052.     move.l d0,d1
  11053.  
  11054.     move.l d1,d2
  11055.     and.b #1,d2
  11056.     lsl.l #8,d2
  11057.     lsr.l #1,d1
  11058.  
  11059.     move.b d1,d2
  11060.     and.b #1,d2
  11061.     lsl.l #8,d2
  11062.     lsr.l #1,d1
  11063.  
  11064.     move.b d1,d2
  11065.     and.b #1,d2
  11066.     lsl.l #8,d2
  11067.     lsr.l #1,d1
  11068.  
  11069.     move.b d1,d2
  11070.     and.b #1,d2
  11071.     lsr.l #1,d1
  11072.  
  11073.     move.l d2,d3        ; merge (double bits)
  11074.     lsl.l #1,d2
  11075.     or.l d3,d2
  11076.     lsl.l #1,d2
  11077.     or.l d3,d2
  11078.     lsl.l #1,d2
  11079.     or.l d3,d2
  11080.     move.l d2,(a0)+
  11081.  
  11082.  
  11083.     move.b d1,d2
  11084.     and.b #1,d2
  11085.     lsl.l #8,d2
  11086.     lsr.l #1,d1
  11087.  
  11088.     move.b d1,d2
  11089.     and.b #1,d2
  11090.     lsl.l #8,d2
  11091.     lsr.l #1,d1
  11092.  
  11093.     move.b d1,d2
  11094.     and.b #1,d2
  11095.     lsl.l #8,d2
  11096.     lsr.l #1,d1
  11097.  
  11098.     move.b d1,d2
  11099.  
  11100.     move.l d2,d3        ; Quad merge the bits
  11101.     lsl.l #1,d2
  11102.     or.l d3,d2
  11103.     lsl.l #1,d2
  11104.     or.l d3,d2
  11105.     lsl.l #1,d2
  11106.     or.l d3,d2
  11107.     move.l d2,(a0)+
  11108.  
  11109.     addq.l #1,d0
  11110.     dbf d7,Pllb_C2p_init_8bit_pixelwidth4_lp
  11111.  
  11112.     rts
  11113.     
  11114.  
  11115.  
  11116.  
  11117.  
  11118. ;    -    -    -    -    -    -    -    -    -
  11119.  
  11120.  
  11121.  
  11122. Pllb_c2p_init_registers:
  11123.  
  11124.     move.l Pllb_C2p_FastBuffer_PointerA(pc),a0
  11125.     move.l Pllb_C2p_FastBuffer_PointerB(pc),a3
  11126.     move.l Pllb_C2p_FastBuffer_PointerC(pc),a4
  11127.     move.l Pllb_C2p_FastBuffer_PointerD(pc),a5
  11128.  
  11129.     move.l a0,d0
  11130.     add.l a3,d0    
  11131.     add.l a4,d0    
  11132.     add.l a5,d0    
  11133.  
  11134.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a1
  11135.  
  11136.     move.w #255,d7
  11137.     rts
  11138.  
  11139.  
  11140. Pllb_c2p_init_failed_no_fastram:
  11141.  
  11142.     move.w #Pllb_c2p_Not_Active,Pllb_C2p_Enabled_Flag
  11143.  
  11144.  
  11145.     rts
  11146.  
  11147.  
  11148. ;    -    -    -    -    -    -    -    -    -
  11149.  
  11150. ;                 >> PLLB_C2p Init 8bit tables <<
  11151.  
  11152. ;              Normal Single Pixel width init routine
  11153.  
  11154. ;                 >> 512k version <<
  11155.  
  11156. ;    -    -    -    -    -    -    -    -    -
  11157.  
  11158.  
  11159. Pllb_C2p_init_8Bit_1by1_512k_tables:
  11160.  
  11161.  
  11162.     bsr Pllb_C2p_init_8bit_pixelwidth1
  11163.  
  11164.     bsr Pllb_c2p_init_registers
  11165.  
  11166.  
  11167.     tst.l d0
  11168.     beq Pllb_c2p_init_failed_no_fastram
  11169.  
  11170.  
  11171. Pllb_C2p_init_8Bit_1by1_512k_tables_ylp:
  11172.  
  11173.     move.l (a1)+,d0
  11174.     move.l (a1)+,d1
  11175.  
  11176.     lsl.l #1,d0
  11177.     lsl.l #1,d1
  11178.     
  11179.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11180.  
  11181.  
  11182.     move.w #255,d6
  11183.  
  11184. Pllb_C2p_init_8Bit_1by1_512k_tables_xlp:
  11185.  
  11186.         move.l (a2)+,d2
  11187.         move.l (a2)+,d3
  11188.         or.l d0,d2
  11189.         or.l d1,d3
  11190.         move.l d2,(a0)+        
  11191.         move.l d3,(a0)+        
  11192.  
  11193.         dbf d6,Pllb_C2p_init_8Bit_1by1_512k_tables_xlp
  11194.  
  11195.     dbf d7,Pllb_C2p_init_8Bit_1by1_512k_tables_ylp
  11196.      rts
  11197.     
  11198.  
  11199.  
  11200.  
  11201. ;    -    -    -    -    -    -    -    -    -
  11202.  
  11203. ;                  >> PLLB_C2p Init tables <<
  11204.  
  11205. ;              Normal Single Pixel width init routine
  11206.  
  11207. ;                 >> 1meg version <<
  11208.  
  11209. ;    -    -    -    -    -    -    -    -    -
  11210.  
  11211.  
  11212. Pllb_C2p_init_8Bit_1by1_1Meg_tables:
  11213.  
  11214.     bsr Pllb_C2p_init_8bit_pixelwidth1
  11215.  
  11216.     bsr Pllb_c2p_init_registers
  11217.  
  11218.  
  11219.     tst.l d0
  11220.     beq Pllb_c2p_init_failed_no_fastram
  11221.  
  11222.  
  11223. Pllb_C2p_init_8Bit_1by1_1Meg_tables_ylp:
  11224.  
  11225.     move.l (a1)+,d0
  11226.     move.l (a1)+,d1
  11227.  
  11228.     lsl.l #1,d0
  11229.     lsl.l #1,d1
  11230.     
  11231.  
  11232.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11233.  
  11234.  
  11235.     move.w #255,d6
  11236.  
  11237. Pllb_C2p_init_8Bit_1by1_1Meg_tables_xlp:
  11238.  
  11239.         move.l (a2)+,d2
  11240.         move.l (a2)+,d3
  11241.         or.l d0,d2
  11242.         or.l d1,d3
  11243.         move.l d2,(a0)+        
  11244.         move.l d3,(a0)+        
  11245.         lsl.l #2,d2
  11246.         lsl.l #2,d3
  11247.         move.l d2,(a3)+        
  11248.         move.l d3,(a3)+        
  11249.  
  11250.         dbf d6,Pllb_C2p_init_8Bit_1by1_1Meg_tables_xlp
  11251.  
  11252.     dbf d7,Pllb_C2p_init_8Bit_1by1_1meg_tables_ylp
  11253.      rts
  11254.     
  11255.  
  11256.  
  11257.  
  11258.  
  11259. ;    -    -    -    -    -    -    -    -    -
  11260.  
  11261. ;                  >> PLLB_C2p Init tables <<
  11262.  
  11263. ;              Normal Single Pixel width init routine
  11264.  
  11265. ;                 >> 1_5meg version <<
  11266.  
  11267. ;    -    -    -    -    -    -    -    -    -
  11268.  
  11269.  
  11270. Pllb_C2p_init_8Bit_1by1_1_5meg_tables:
  11271.  
  11272.     bsr Pllb_C2p_init_8bit_pixelwidth1
  11273.  
  11274.     bsr Pllb_c2p_init_registers
  11275.  
  11276.     tst.l d0
  11277.     beq Pllb_c2p_init_failed_no_fastram
  11278.  
  11279.  
  11280. Pllb_C2p_init_8Bit_1by1_1_5meg_tables_ylp:
  11281.  
  11282.     move.l (a1)+,d0
  11283.     move.l (a1)+,d1
  11284.  
  11285.     lsl.l #1,d0
  11286.     lsl.l #1,d1
  11287.     
  11288.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11289.  
  11290.     move.w #255,d6
  11291.  
  11292. Pllb_C2p_init_8Bit_1by1_1_5meg_tables_xlp:
  11293.  
  11294.         move.l (a2)+,d2
  11295.         move.l (a2)+,d3
  11296.         or.l d0,d2
  11297.         or.l d1,d3
  11298.         move.l d2,(a0)+        
  11299.         move.l d3,(a0)+        
  11300.         lsl.l #2,d2
  11301.         lsl.l #2,d3
  11302.         move.l d2,(a3)+        
  11303.         move.l d3,(a3)+        
  11304.         lsl.l #2,d2
  11305.         lsl.l #2,d3
  11306.         move.l d2,(a4)+        
  11307.         move.l d3,(a4)+        
  11308.  
  11309.         dbf d6,Pllb_C2p_init_8Bit_1by1_1_5meg_tables_xlp
  11310.  
  11311.     dbf d7,Pllb_C2p_init_8Bit_1by1_1_5meg_tables_ylp
  11312.      rts
  11313.     
  11314.  
  11315.  
  11316.  
  11317.  
  11318.  
  11319.  
  11320.  
  11321.  
  11322.  
  11323.  
  11324.  
  11325. ;    -    -    -    -    -    -    -    -    -
  11326.  
  11327. ;                  >> PLLB_C2p Init tables <<
  11328.  
  11329. ;              Normal Single Pixel width init routine
  11330.  
  11331. ;                 >> 2meg version <<
  11332.  
  11333. ;    -    -    -    -    -    -    -    -    -
  11334.  
  11335.  
  11336. Pllb_C2p_init_8Bit_1by1_2meg_tables:
  11337.  
  11338.     bsr Pllb_C2p_init_8bit_pixelwidth1
  11339.  
  11340.     bsr Pllb_c2p_init_registers
  11341.  
  11342.     tst.l d0
  11343.     beq Pllb_c2p_init_failed_no_fastram
  11344.  
  11345.  
  11346. Pllb_C2p_init_8Bit_1by1_2meg_tables_ylp:
  11347.  
  11348.     move.l (a1)+,d0
  11349.     move.l (a1)+,d1
  11350.  
  11351.     lsl.l #1,d0
  11352.     lsl.l #1,d1
  11353.     
  11354.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11355.  
  11356.     move.w #255,d6
  11357.  
  11358. Pllb_C2p_init_8Bit_1by1_2meg_tables_xlp:
  11359.  
  11360.         move.l (a2)+,d2
  11361.         move.l (a2)+,d3
  11362.         or.l d0,d2
  11363.         or.l d1,d3
  11364.         move.l d2,(a0)+        
  11365.         move.l d3,(a0)+        
  11366.         lsl.l #2,d2
  11367.         lsl.l #2,d3
  11368.         move.l d2,(a3)+        
  11369.         move.l d3,(a3)+        
  11370.         lsl.l #2,d2
  11371.         lsl.l #2,d3
  11372.         move.l d2,(a4)+        
  11373.         move.l d3,(a4)+        
  11374.         lsl.l #2,d2
  11375.         lsl.l #2,d3
  11376.         move.l d2,(a5)+        
  11377.         move.l d3,(a5)+        
  11378.  
  11379.         dbf d6,Pllb_C2p_init_8Bit_1by1_2meg_tables_xlp
  11380.  
  11381.     dbf d7,Pllb_C2p_init_8bit_1by1_2meg_tables_ylp
  11382.      rts
  11383.     
  11384.  
  11385.  
  11386.  
  11387.  
  11388.  
  11389. ;    -    -    -    -    -    -    -    -    -
  11390.  
  11391. ;                  >> PLLB_C2p Init tables <<
  11392.  
  11393. ;                      DOUBLE Pixel width
  11394.  
  11395. ;                 >> 512k version <<
  11396.  
  11397. ;    -    -    -    -    -    -    -    -    -
  11398.  
  11399.  
  11400. Pllb_C2p_init_8Bit_2by1_512k_tables:
  11401.  
  11402.     bsr Pllb_C2p_init_8bit_pixelwidth2
  11403.  
  11404.     bsr Pllb_c2p_init_registers
  11405.  
  11406.     tst.l d0
  11407.     beq Pllb_c2p_init_failed_no_fastram
  11408.  
  11409.  
  11410. Pllb_C2p_init_8Bit_2by1_512k_tables_ylp:
  11411.  
  11412.     move.l (a1)+,d0
  11413.     move.l (a1)+,d1
  11414.  
  11415.     lsl.l #2,d0
  11416.     lsl.l #2,d1
  11417.  
  11418.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11419.  
  11420.     move.w #255,d6
  11421.  
  11422. Pllb_C2p_init_8Bit_2by1_512k_tables_xlp:
  11423.  
  11424.         move.l (a2)+,d2
  11425.         move.l (a2)+,d3
  11426.  
  11427.         or.l d0,d2
  11428.         or.l d1,d3
  11429.         move.l d2,(a0)+        
  11430.         move.l d3,(a0)+        
  11431.  
  11432.         lsl.l #4,d2
  11433.         lsl.l #4,d3
  11434.         move.l d2,(a3)+        
  11435.         move.l d3,(a3)+        
  11436.         
  11437.  
  11438.         dbf d6,Pllb_C2p_init_8Bit_2by1_512k_tables_xlp
  11439.  
  11440.     dbf d7,Pllb_C2p_init_8Bit_2by1_512k_tables_ylp
  11441.     rts
  11442.     
  11443.  
  11444.  
  11445.  
  11446.  
  11447.  
  11448.  
  11449.  
  11450.  
  11451.  
  11452.  
  11453. ;    -    -    -    -    -    -    -    -    -
  11454.  
  11455. ;                  >> PLLB_C2p Init tables <<
  11456.  
  11457. ;                      DOUBLE Pixel width
  11458.  
  11459. ;                 >> 1meg version <<
  11460.  
  11461. ;    -    -    -    -    -    -    -    -    -
  11462.  
  11463.  
  11464. Pllb_C2p_init_8Bit_2by1_1meg_tables:
  11465.  
  11466.     bsr Pllb_C2p_init_8bit_pixelwidth2
  11467.  
  11468.     bsr Pllb_c2p_init_registers
  11469.  
  11470.     tst.l d0
  11471.     beq Pllb_c2p_init_failed_no_fastram
  11472.  
  11473.  
  11474. Pllb_C2p_init_8Bit_2by1_1meg_tables_ylp:
  11475.  
  11476.     move.l (a1)+,d0
  11477.     move.l (a1)+,d1
  11478.  
  11479.     lsl.l #2,d0
  11480.     lsl.l #2,d1
  11481.  
  11482.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11483.  
  11484.     move.w #255,d6
  11485.  
  11486. Pllb_C2p_init_8Bit_2by1_1meg_tables_xlp:
  11487.  
  11488.         move.l (a2)+,d2
  11489.         move.l (a2)+,d3
  11490.  
  11491.         or.l d0,d2
  11492.         or.l d1,d3
  11493.         move.l d2,(a0)+        
  11494.         move.l d3,(a0)+        
  11495.  
  11496.         lsl.l #4,d2
  11497.         lsl.l #4,d3
  11498.         move.l d2,(a3)+        
  11499.         move.l d3,(a3)+        
  11500.         
  11501.  
  11502.         dbf d6,Pllb_C2p_init_8Bit_2by1_1meg_tables_xlp
  11503.  
  11504.     
  11505.     dbf d7,Pllb_C2p_init_8Bit_2by1_1meg_tables_ylp
  11506.  
  11507.     rts
  11508.     
  11509.  
  11510.  
  11511. ;    -    -    -    -    -    -    -    -    -
  11512.  
  11513. ;                  >> PLLB_C2p Init tables <<
  11514.  
  11515. ;                      DOUBLE Pixel width
  11516.  
  11517. ;                 >> 512k version <<
  11518.  
  11519. ;    -    -    -    -    -    -    -    -    -
  11520.  
  11521.  
  11522. Pllb_C2p_init_8Bit_4by1_512k_tables:
  11523.  
  11524.     bsr Pllb_C2p_init_8bit_pixelwidth4
  11525.  
  11526.     bsr Pllb_c2p_init_registers
  11527.  
  11528.     tst.l d0
  11529.     beq Pllb_c2p_init_failed_no_fastram
  11530.  
  11531.  
  11532. Pllb_C2p_init_8Bit_4by1_512k_tables_ylp:
  11533.  
  11534.     move.l (a1)+,d0
  11535.     move.l (a1)+,d1
  11536.  
  11537.     lsl.l #4,d0
  11538.     lsl.l #4,d1
  11539.  
  11540.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11541.  
  11542.  
  11543.     move.w #255,d6
  11544.  
  11545. Pllb_C2p_init_8Bit_4by1_512k_tables_xlp:
  11546.  
  11547.         move.l (a2)+,d2
  11548.         move.l (a2)+,d3
  11549.         or.l d0,d2
  11550.         or.l d1,d3
  11551.         move.l d2,(a0)+        
  11552.         move.l d3,(a0)+        
  11553.  
  11554.         dbf d6,Pllb_C2p_init_8Bit_4by1_512k_tables_xlp
  11555.  
  11556.     dbf d7,Pllb_C2p_init_8Bit_4by1_512k_tables_ylp
  11557.  
  11558.     rts
  11559.     
  11560.  
  11561.  
  11562.  
  11563.  
  11564.  
  11565. ;    -    -    -    -    -    -    -    -    -
  11566.  
  11567. ;                 >> PLLB_C2p Init 4bit tables <<
  11568.  
  11569. ;                 QUAD Pixel width init routine
  11570.  
  11571. ;                 >> 512k version <<
  11572.  
  11573. ;    -    -    -    -    -    -    -    -    -
  11574.  
  11575. Pllb_C2p_init_4Bit_4by1_512k_tables:
  11576.  
  11577.     bsr Pllb_C2p_init_8bit_pixelwidth4
  11578.  
  11579.     bsr Pllb_c2p_init_registers
  11580.  
  11581.     tst.l d0
  11582.     beq Pllb_c2p_init_failed_no_fastram
  11583.  
  11584.  
  11585. Pllb_C2p_init_4Bit_4by1_512k_tables_ylp:
  11586.  
  11587.     move.l (a1)+,d0
  11588.     move.l (a1)+,d1
  11589.  
  11590.     lsl.l #4,d1
  11591.     or.l d0,d1
  11592.  
  11593.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11594.  
  11595.     move.w #255,d6
  11596.  
  11597. Pllb_C2p_init_4Bit_4by1_512k_tables_xlp:
  11598.  
  11599.         move.l (a2)+,d2
  11600.         move.l (a2)+,d3
  11601.  
  11602.         lsl.l #4,d3
  11603.         or.l d2,d3
  11604.  
  11605.         move.l d1,d2
  11606.  
  11607.         move.l d1,(a0)        
  11608.         move.l d3,4(a0)
  11609.  
  11610.         move.b (a0),d2
  11611.         lsl.l #8,d2
  11612.         move.b 4(a0),d2
  11613.         swap d2
  11614.         move.b 2(a0),d2
  11615.         lsl.w #8,d2
  11616.         move.b 6(a0),d2
  11617.  
  11618.         move.b 1(a0),d3
  11619.         lsl.l #8,d3
  11620.         move.b 5(a0),d3
  11621.         swap d3
  11622.         move.b 3(a0),d3
  11623.         lsl.w #8,d3
  11624.         move.b 7(a0),d3
  11625.     
  11626.         move.l d2,(a0)+        
  11627.         move.l d3,(a0)+
  11628.  
  11629.         dbf d6,Pllb_C2p_init_4Bit_4by1_512k_tables_xlp
  11630.  
  11631.     dbf d7,Pllb_C2p_init_4Bit_4by1_512k_tables_ylp
  11632.     rts
  11633.     
  11634.  
  11635.  
  11636.  
  11637.  
  11638. ;    -    -    -    -    -    -    -    -    -
  11639.  
  11640. ;                 >> PLLB_C2p Init 4bit tables <<
  11641.  
  11642. ;                 DOUBLE Pixel width init routine
  11643.  
  11644. ;                 >> 512k version <<
  11645.  
  11646. ;    -    -    -    -    -    -    -    -    -
  11647.  
  11648.  
  11649. Pllb_C2p_init_4Bit_2by1_512k_tables:
  11650.  
  11651.     bsr Pllb_C2p_init_8bit_pixelwidth2
  11652.  
  11653.     bsr Pllb_c2p_init_registers
  11654.  
  11655.     tst.l d0
  11656.     beq Pllb_c2p_init_failed_no_fastram
  11657.  
  11658.  
  11659. Pllb_C2p_init_4Bit_2by1_512k_tables_ylp:
  11660.  
  11661.     move.l (a1)+,d0
  11662.     move.l (a1)+,d1
  11663.  
  11664.     lsl.l #4,d1
  11665.     or.l d0,d1
  11666.     lsl.l #2,d1
  11667.     
  11668.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11669.  
  11670.     move.w #255,d6
  11671.  
  11672. Pllb_C2p_init_4Bit_2by1_512k_tables_xlp:
  11673.  
  11674.         move.l (a2)+,d2
  11675.         move.l (a2)+,d3
  11676.  
  11677.         lsl.l #4,d3
  11678.         or.l d2,d3
  11679.  
  11680.         or.l d1,d3
  11681.         move.l d3,(a0)+        
  11682.  
  11683.     
  11684.         dbf d6,Pllb_C2p_init_4Bit_2by1_512k_tables_xlp
  11685.  
  11686.     dbf d7,Pllb_C2p_init_4Bit_2by1_512k_tables_ylp
  11687.  
  11688.     rts
  11689.     
  11690.  
  11691.  
  11692.  
  11693.  
  11694.  
  11695.  
  11696.  
  11697. ;    -    -    -    -    -    -    -    -    -
  11698.  
  11699. ;                 >> PLLB_C2p Init 4bit tables <<
  11700.  
  11701. ;              Normal Single Pixel width init routine
  11702.  
  11703. ;                 >> 512k version <<
  11704.  
  11705. ;    -    -    -    -    -    -    -    -    -
  11706.  
  11707.  
  11708. Pllb_C2p_init_4Bit_1by1_512k_tables:
  11709.  
  11710.     bsr Pllb_C2p_init_8bit_pixelwidth1
  11711.  
  11712.     bsr Pllb_c2p_init_registers
  11713.  
  11714.     tst.l d0
  11715.     beq Pllb_c2p_init_failed_no_fastram
  11716.  
  11717.  
  11718.     move.l a0,a3
  11719.     add.l #4*$10000,a3
  11720.  
  11721. Pllb_C2p_init_4Bit_1by1_512k_tables_YLP:
  11722.  
  11723.     move.l (a1)+,d0
  11724.     move.l (a1)+,d1
  11725.  
  11726.     lsl.l #4,d1
  11727.     or.l d0,d1
  11728.     lsl.l #1,d1
  11729.  
  11730.     lea.l Pllb_C2p_Temp_Comb_buffer(pc),a2
  11731.  
  11732.     move.w #255,d6
  11733.  
  11734.  
  11735. Pllb_C2p_init_4Bit_1by1_512k_tables_XLP:
  11736.  
  11737.         move.l (a2)+,d2
  11738.         move.l (a2)+,d3
  11739.  
  11740.         lsl.l #4,d3
  11741.         or.l d2,d3
  11742.  
  11743.         or.l d1,d3
  11744.         move.l d3,(a0)+        
  11745.  
  11746.         lsl.l #2,d3
  11747.         move.l d3,(a3)+        
  11748.  
  11749.  
  11750.         dbf d6,Pllb_C2p_init_4Bit_1by1_512k_tables_xLP
  11751.  
  11752.  
  11753.     dbf d7,Pllb_C2p_init_4Bit_1by1_512k_tables_YLP
  11754.     rts
  11755.     
  11756.  
  11757.  
  11758.  
  11759.  
  11760.  
  11761.  
  11762.  
  11763.  
  11764. ;    -    -    -    -    -    -    -    -    -
  11765.  
  11766. ;                >> PLLB-C2P Routine Alignment System <<
  11767.  
  11768. ;    -    -    -    -    -    -    -    -    -
  11769.  
  11770.  
  11771. Pllb_C2p_Routine_alignment_system:
  11772.  
  11773.     lea.l Pllb_C2P_Routine_Alignment_System_Table(pc),a0
  11774.  
  11775.     move.w (a0)+,d7
  11776.  
  11777. Pllb_C2P_Routine_Alignment_system_lp:
  11778.  
  11779.     move.l (a0)+,a1        ; base address of routine
  11780.  
  11781.     move.l a1,d0
  11782.     and.l #$fffffff0,d0
  11783.     move.l d0,a2
  11784.  
  11785.     move.l (a0)+,d6
  11786.     subq.w #1,d6
  11787.  
  11788. Pllb_C2P_Routine_Alignment_system_Copylp:
  11789.  
  11790.         move.b (a1)+,(a2)+        
  11791.  
  11792.         dbf d6,Pllb_C2P_Routine_Alignment_system_Copylp
  11793.  
  11794.     dbf d7,Pllb_C2P_Routine_Alignment_system_lp
  11795.  
  11796.     rts
  11797.  
  11798.  
  11799.  
  11800. Pllb_C2P_Routine_Alignment_system_table:
  11801.  
  11802.  dc.w ((Pllb_C2P_Routine_Alignment_system_table_end-Pllb_C2P_Routine_Alignment_system_table_Start)/8)-1
  11803.  
  11804. Pllb_C2P_Routine_Alignment_system_table_Start
  11805.  
  11806.     ; 8 bit c2ps
  11807.  
  11808.     dc.l Pllb_C2p_8bit_512K_1by1_AP
  11809.     dc.l Pllb_C2p_8bit_512k_1by1_APend-Pllb_C2p_8bit_512k_1by1_AP
  11810.     dc.l Pllb_C2p_8bit_1meg_1by1_AP
  11811.     dc.l Pllb_C2p_8bit_1meg_1by1_APend-Pllb_C2p_8bit_1meg_1by1_AP
  11812.     dc.l Pllb_C2p_8bit_1_5meg_1by1_AP
  11813.     dc.l Pllb_C2p_8bit_1_5meg_1by1_APend-Pllb_C2p_8bit_1_5meg_1by1_AP
  11814.     dc.l Pllb_C2p_8bit_2meg_1by1_AP
  11815.     dc.l Pllb_C2p_8bit_2meg_1by1_APend-Pllb_C2p_8bit_2meg_1by1_AP
  11816.  
  11817.     ; delta versions
  11818.  
  11819.     dc.l Pllb_C2p_Delta_8bit_512k_1by1_AP
  11820.     dc.l Pllb_C2p_Delta_8bit_512k_1by1_APend-Pllb_C2p_Delta_8bit_512k_1by1_AP
  11821.     dc.l Pllb_C2p_Delta_8bit_1meg_1by1_AP
  11822.     dc.l Pllb_C2p_Delta_8bit_1meg_1by1_APend-Pllb_C2p_Delta_8bit_1meg_1by1_AP
  11823.     dc.l Pllb_C2p_Delta_8bit_1_5meg_1by1_AP
  11824.     dc.l Pllb_C2p_Delta_8bit_1_5meg_1by1_APend-Pllb_C2p_Delta_8bit_1_5meg_1by1_AP
  11825.     dc.l Pllb_C2p_Delta_8bit_2meg_1by1_AP
  11826.     dc.l Pllb_C2p_Delta_8bit_2meg_1by1_APend-Pllb_C2p_Delta_8bit_2meg_1by1_AP
  11827.  
  11828.  
  11829.     ; null skip version
  11830.  
  11831.     dc.l Pllb_C2p_NullSkip_8bit_512k_1by1_AP
  11832.     dc.l Pllb_C2p_NullSkip_8bit_512k_1by1_APend-Pllb_C2p_NullSkip_8bit_512k_1by1_AP
  11833.     dc.l Pllb_C2p_NullSkip_8bit_1meg_1by1_AP
  11834.     dc.l Pllb_C2p_NullSkip_8bit_1meg_1by1_APend-Pllb_C2p_NullSkip_8bit_1meg_1by1_AP
  11835.     dc.l Pllb_C2p_NullSkip_8bit_1_5meg_1by1_AP
  11836.     dc.l Pllb_C2p_NullSkip_8bit_1_5meg_1by1_APend-Pllb_C2p_NullSkip_8bit_1_5meg_1by1_AP
  11837.     dc.l Pllb_C2p_NullSkip_8bit_2meg_1by1_AP
  11838.     dc.l Pllb_C2p_NullSkip_8bit_2meg_1by1_APend-Pllb_C2p_NullSkip_8bit_2meg_1by1_AP
  11839.  
  11840.  
  11841.  
  11842.  
  11843.  
  11844.     ; null skip version
  11845.  
  11846.     dc.l Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_AP
  11847.     dc.l Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_APend-Pllb_C2p_DeltaNullSkip_8bit_512k_1by1_AP
  11848.     dc.l Pllb_C2p_DeltaNullSkip_8bit_1meg_1by1_AP
  11849.     dc.l Pllb_C2p_DeltaNullSkip_8bit_1meg_1by1_APend-Pllb_C2p_DeltaNullSkip_8bit_1meg_1by1_AP
  11850.     dc.l Pllb_C2p_DeltaNullSkip_8bit_1_5meg_1by1_AP
  11851.     dc.l Pllb_C2p_DeltaNullSkip_8bit_1_5meg_1by1_APend-Pllb_C2p_DeltaNullSkip_8bit_1_5meg_1by1_AP
  11852.  
  11853.  
  11854.     ; 8bit 2by1 modes Normal
  11855.  
  11856.     dc.l Pllb_C2p_8bit_512K_2by1_AP
  11857.     dc.l Pllb_C2p_8bit_512k_2by1_APend-Pllb_C2p_8bit_512k_2by1_AP
  11858.     dc.l Pllb_C2p_8bit_1meg_2by1_AP
  11859.     dc.l Pllb_C2p_8bit_1meg_2by1_APend-Pllb_C2p_8bit_1meg_2by1_AP
  11860.  
  11861.     ; 8bit 2by1 modes Delta
  11862.  
  11863.     dc.l Pllb_C2p_Delta_8bit_512K_2by1_AP
  11864.     dc.l Pllb_C2p_Delta_8Bit_512k_2by1_APend-Pllb_C2p_Delta_8Bit_512k_2by1_AP
  11865.     dc.l Pllb_C2p_Delta_8Bit_1meg_2by1_AP
  11866.     dc.l Pllb_C2p_Delta_8Bit_1meg_2by1_APend-Pllb_C2p_Delta_8bit_1meg_2by1_AP
  11867.  
  11868.     ; 8bit 2by1 modes Nullskip
  11869.  
  11870.     dc.l Pllb_C2p_NullSkip_8bit_512K_2by1_AP
  11871.     dc.l Pllb_C2p_NullSkip_8Bit_512k_2by1_APend-Pllb_C2p_NullSkip_8Bit_512k_2by1_AP
  11872.     dc.l Pllb_C2p_NullSkip_8Bit_1meg_2by1_AP
  11873.     dc.l Pllb_C2p_NullSkip_8Bit_1meg_2by1_APend-Pllb_C2p_NullSkip_8bit_1meg_2by1_AP
  11874.  
  11875.     ; 8bit 2by1 modes DeltaNullSkip
  11876.  
  11877.     dc.l Pllb_C2p_DeltaNullSkip_8bit_512K_2by1_AP
  11878.     dc.l Pllb_C2p_DeltaNullSkip_8Bit_512k_2by1_APend-Pllb_C2p_DeltaNullSkip_8Bit_512k_2by1_AP
  11879.     dc.l Pllb_C2p_DeltaNullSkip_8Bit_1meg_2by1_AP
  11880.     dc.l Pllb_C2p_DeltaNullSkip_8Bit_1meg_2by1_APend-Pllb_C2p_DeltaNullSkip_8bit_1meg_2by1_AP
  11881.  
  11882.  
  11883.  
  11884.     ; 8bit 4by1 modes Normal
  11885.  
  11886.     dc.l Pllb_C2p_8bit_512K_4by1_AP
  11887.     dc.l Pllb_C2p_8bit_512k_4by1_APend-Pllb_C2p_8bit_512k_4by1_AP
  11888.     ; 8bit 4by1 modes Delta
  11889.     dc.l Pllb_C2p_Delta_8bit_512K_4by1_AP
  11890.     dc.l Pllb_C2p_Delta_8Bit_512k_4by1_APend-Pllb_C2p_Delta_8Bit_512k_4by1_AP
  11891.  
  11892.     ; 8bit 4by1 modes Nillskip
  11893.     dc.l Pllb_C2p_NullSkip_8bit_512K_4by1_AP
  11894.     dc.l Pllb_C2p_NullSkip_8Bit_512k_4by1_APend-Pllb_C2p_NullSkip_8Bit_512k_4by1_AP
  11895.  
  11896.  
  11897.     ; 8bit 4by1 modes DeltaNullSkip
  11898.     dc.l Pllb_C2p_DeltaNullSkip_8bit_512K_4by1_AP
  11899.     dc.l Pllb_C2p_DeltaNullSkip_8Bit_512k_4by1_APend-Pllb_C2p_DeltaNullSkip_8Bit_512k_4by1_AP
  11900.  
  11901.  
  11902.  
  11903.     ; 6 bit C2p's    1by1
  11904.     
  11905.  
  11906.     dc.l Pllb_C2p_6bit_512K_1by1_AP
  11907.     dc.l Pllb_C2p_6bit_512k_1by1_APend-Pllb_C2p_6bit_512k_1by1_AP
  11908.     dc.l Pllb_C2p_6bit_1meg_1by1_AP
  11909.     dc.l Pllb_C2p_6bit_1meg_1by1_APend-Pllb_C2p_6bit_1meg_1by1_AP
  11910.     dc.l Pllb_C2p_6bit_1_5meg_1by1_AP
  11911.     dc.l Pllb_C2p_6bit_1_5meg_1by1_APend-Pllb_C2p_6bit_1_5meg_1by1_AP
  11912.     dc.l Pllb_C2p_6bit_2meg_1by1_AP
  11913.     dc.l Pllb_C2p_6bit_2meg_1by1_APend-Pllb_C2p_6bit_2meg_1by1_AP
  11914.  
  11915.  
  11916.     ; delta versions
  11917.  
  11918.     dc.l Pllb_C2p_Delta_6bit_512k_1by1_AP
  11919.     dc.l Pllb_C2p_Delta_6bit_512k_1by1_APend-Pllb_C2p_Delta_6bit_512k_1by1_AP
  11920.     dc.l Pllb_C2p_Delta_6bit_1meg_1by1_AP
  11921.     dc.l Pllb_C2p_Delta_6bit_1meg_1by1_APend-Pllb_C2p_Delta_6bit_1meg_1by1_AP
  11922.     dc.l Pllb_C2p_Delta_6bit_1_5meg_1by1_AP
  11923.     dc.l Pllb_C2p_Delta_6bit_1_5meg_1by1_APend-Pllb_C2p_Delta_6bit_1_5meg_1by1_AP
  11924.     dc.l Pllb_C2p_Delta_6bit_2meg_1by1_AP
  11925.     dc.l Pllb_C2p_Delta_6bit_2meg_1by1_APend-Pllb_C2p_Delta_6bit_2meg_1by1_AP
  11926.  
  11927.     ; Nullskip versions
  11928.  
  11929.     dc.l Pllb_C2p_Nullskip_6bit_512k_1by1_AP
  11930.     dc.l Pllb_C2p_Nullskip_6bit_512k_1by1_APend-Pllb_C2p_Nullskip_6bit_512k_1by1_AP
  11931.     dc.l Pllb_C2p_Nullskip_6bit_1meg_1by1_AP
  11932.     dc.l Pllb_C2p_Nullskip_6bit_1meg_1by1_APend-Pllb_C2p_Nullskip_6bit_1meg_1by1_AP
  11933.     dc.l Pllb_C2p_Nullskip_6bit_1_5meg_1by1_AP
  11934.     dc.l Pllb_C2p_Nullskip_6bit_1_5meg_1by1_APend-Pllb_C2p_Nullskip_6bit_1_5meg_1by1_AP
  11935.     dc.l Pllb_C2p_Nullskip_6bit_2meg_1by1_AP
  11936.     dc.l Pllb_C2p_Nullskip_6bit_2meg_1by1_APend-Pllb_C2p_Nullskip_6bit_2meg_1by1_AP
  11937.  
  11938.  
  11939.     ; DeltaNullSkip versions
  11940.  
  11941.     dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_AP
  11942.     dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_APend-Pllb_C2p_DeltaNullSkip_6bit_512k_1by1_AP
  11943.     dc.l Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_AP
  11944.     dc.l Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_APend-Pllb_C2p_DeltaNullSkip_6bit_1meg_1by1_AP
  11945.     dc.l Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_AP
  11946.     dc.l Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_APend-Pllb_C2p_DeltaNullSkip_6bit_1_5meg_1by1_AP
  11947.  
  11948.  
  11949.  
  11950.  
  11951.  
  11952.     ; 6 bit C2p's    2by1
  11953.     
  11954.     dc.l Pllb_C2p_6bit_512K_2by1_AP
  11955.     dc.l Pllb_C2p_6bit_512k_2by1_APend-Pllb_C2p_6bit_512k_2by1_AP
  11956.     dc.l Pllb_C2p_6bit_1meg_2by1_AP
  11957.     dc.l Pllb_C2p_6bit_1meg_2by1_APend-Pllb_C2p_6bit_1meg_2by1_AP
  11958.  
  11959.     ; delta versions
  11960.  
  11961.     dc.l Pllb_C2p_Delta_6bit_512k_2by1_AP
  11962.     dc.l Pllb_C2p_Delta_6bit_512k_2by1_APend-Pllb_C2p_Delta_6bit_512k_2by1_AP
  11963.     dc.l Pllb_C2p_Delta_6bit_1meg_2by1_AP
  11964.     dc.l Pllb_C2p_Delta_6bit_1meg_2by1_APend-Pllb_C2p_Delta_6bit_1meg_2by1_AP
  11965.  
  11966.     ; nullskip
  11967.     dc.l Pllb_C2p_Nullskip_6bit_512k_2by1_AP
  11968.     dc.l Pllb_C2p_Nullskip_6bit_512k_2by1_APend-Pllb_C2p_Nullskip_6bit_512k_2by1_AP
  11969.     dc.l Pllb_C2p_Nullskip_6bit_1meg_2by1_AP
  11970.     dc.l Pllb_C2p_Nullskip_6bit_1meg_2by1_APend-Pllb_C2p_Nullskip_6bit_1meg_2by1_AP
  11971.  
  11972.  
  11973.  
  11974.  
  11975.     ; DeltaNullSkip
  11976.     dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_AP
  11977.     dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_APend-Pllb_C2p_DeltaNullSkip_6bit_512k_2by1_AP
  11978.     dc.l Pllb_C2p_DeltaNullSkip_6bit_1meg_2by1_AP
  11979.     dc.l Pllb_C2p_DeltaNullSkip_6bit_1meg_2by1_APend-Pllb_C2p_DeltaNullSkip_6bit_1meg_2by1_AP
  11980.  
  11981.  
  11982.  
  11983.  
  11984.     ; 6 bit C2p's    4by1
  11985.     
  11986.     dc.l Pllb_C2p_6bit_512K_4by1_AP
  11987.     dc.l Pllb_C2p_6bit_512k_4by1_APend-Pllb_C2p_6bit_512k_4by1_AP
  11988.     ; delta versions
  11989.  
  11990.     dc.l Pllb_C2p_Delta_6bit_512k_4by1_AP
  11991.     dc.l Pllb_C2p_Delta_6bit_512k_4by1_APend-Pllb_C2p_Delta_6bit_512k_4by1_AP
  11992.  
  11993.     ; nullskip
  11994.     dc.l Pllb_C2p_Nullskip_6bit_512k_4by1_AP
  11995.     dc.l Pllb_C2p_Nullskip_6bit_512k_4by1_APend-Pllb_C2p_Nullskip_6bit_512k_4by1_AP
  11996.  
  11997.     ; DeltaNullSkip
  11998.     dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_AP
  11999.     dc.l Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_APend-Pllb_C2p_DeltaNullSkip_6bit_512k_4by1_AP
  12000.  
  12001.  
  12002.     ; 4 bit C2p's    1by1
  12003.     
  12004.     dc.l Pllb_C2p_4bit_512K_1by1_AP
  12005.     dc.l Pllb_C2p_4bit_512k_1by1_APend-Pllb_C2p_4bit_512k_1by1_AP
  12006.     dc.l Pllb_C2p_Delta_4bit_512k_1by1_AP
  12007.     dc.l Pllb_C2p_Delta_4bit_512k_1by1_APend-Pllb_C2p_Delta_4bit_512k_1by1_AP
  12008.     dc.l Pllb_C2p_Nullskip_4bit_512k_1by1_AP
  12009.     dc.l Pllb_C2p_Nullskip_4bit_512k_1by1_APend-Pllb_C2p_Nullskip_4bit_512k_1by1_AP
  12010.  
  12011.  
  12012.     dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_AP
  12013.     dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_APend-Pllb_C2p_DeltaNullSkip_4bit_512k_1by1_AP
  12014.  
  12015.     ; 4 bit C2p's    2by1
  12016.  
  12017.     dc.l Pllb_C2p_4bit_512K_2by1_AP
  12018.     dc.l Pllb_C2p_4bit_512k_2by1_APend-Pllb_C2p_4bit_512k_2by1_AP
  12019.     dc.l Pllb_C2p_Delta_4bit_512k_2by1_AP
  12020.     dc.l Pllb_C2p_Delta_4bit_512k_2by1_APend-Pllb_C2p_Delta_4bit_512k_2by1_AP
  12021.     dc.l Pllb_C2p_Nullskip_4bit_512k_2by1_AP
  12022.     dc.l Pllb_C2p_Nullskip_4bit_512k_2by1_APend-Pllb_C2p_Nullskip_4bit_512k_2by1_AP
  12023.  
  12024.     dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_AP
  12025.     dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_APend-Pllb_C2p_DeltaNullSkip_4bit_512k_2by1_AP
  12026.  
  12027.  
  12028.     ; 6 bit C2p's    4by1
  12029.  
  12030.     dc.l Pllb_C2p_4bit_512K_4by1_AP
  12031.     dc.l Pllb_C2p_4bit_512k_4by1_APend-Pllb_C2p_4bit_512k_4by1_AP
  12032.     dc.l Pllb_C2p_Delta_4bit_512k_4by1_AP
  12033.     dc.l Pllb_C2p_Delta_4bit_512k_4by1_APend-Pllb_C2p_Delta_4bit_512k_4by1_AP
  12034.     dc.l Pllb_C2p_Nullskip_4bit_512k_4by1_AP
  12035.     dc.l Pllb_C2p_Nullskip_4bit_512k_4by1_APend-Pllb_C2p_Nullskip_4bit_512k_4by1_AP
  12036.  
  12037.     dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_AP
  12038.     dc.l Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_APend-Pllb_C2p_DeltaNullSkip_4bit_512k_4by1_AP
  12039.  
  12040.  
  12041.  
  12042. Pllb_C2P_Routine_Alignment_system_table_end:
  12043.  
  12044.  
  12045. Pllb_C2p_Temp_Comb_buffer:
  12046.  
  12047.     blk.b 256*8,0
  12048.  
  12049.  
  12050.  
  12051.  
  12052. ;    -    -    -    -    -    -    -    -    -
  12053.  
  12054. ;            >> End of PLLB-C2P Stuff <<
  12055.  
  12056. ;    -    -    -    -    -    -    -    -    -
  12057.  
  12058.  
  12059.  
  12060.